我正在使用Scalariform AutoPlugin,并且想在CI服务器上运行测试时将其禁用。是否有sbt选项可以这样做?
小智 5
实现此目的的一种方法是通过环境变量。请注意,在下面的示例代码中,我使用sbt-release插件,但应易于采用标量形式。
lazy val isJenkins = sys.props.get("JENKINS").isDefined
lazy val disPlugins = if(isJenkins) Seq(ReleasePlugin) else Seq.empty
lazy val root = (project in file(".")).disablePlugins(disPlugins:_*)
Run Code Online (Sandbox Code Playgroud)
第一个val检查是否JENKINS设置了系统属性。根据此值,我们将ReleasePlugin添加到需要禁用的插件序列中。最后,在项目定义期间,我们实际上禁用了这些功能。
如果您使用jenkins属性集(sbt -DJENKINS=true)启动sbt,则ReleasePlugin将被禁用