我想在Jenkins管道作业中使用Switch语句.
def version = "1.2"
switch(GIT_BRANCH) {
case "develop":
result = "dev"
break
case ["master", "support/${version}"]:
result = "list"
break
case "support/${version}":
result = "sup"
break
default:
result = "def"
break
}
echo "${result}"
Run Code Online (Sandbox Code Playgroud)
当GIT_BRANCH
等于:
develop
- 返回值是dev
- 好的master
- 返回值是list
- 好的support/1.2
- 返回值是sup
- 为什么不list
呢?我尝试在 Jenkins 的每个测试构建作业中使用 dependency-check-maven:
mvn org.owasp:dependency-check-maven:6.2.2:aggregate -DskipSystemScope=true -Dformat=ALL -DprettyPrint=true -DcentralAnalyzerEnabled=false -DassemblyAnalyzerEnabled=false -DyarnAuditAnalyzerEnabled=false -DbundleAuditAnalyzerEnabled=false -DversionCheckEnabled=true
Run Code Online (Sandbox Code Playgroud)
不幸的是,我对一些项目和检查文件的节点审计分析器有问题package-lock.json
。
运行 Maven 插件时,日志中出现警告:
[WARNING] An error occurred while analyzing '/var/lib/jenkins/workspace/testbuild/project/module-web/src/main/resources/dev/package-lock.json' (Node Audit Analyzer).
Run Code Online (Sandbox Code Playgroud)
这会导致最终错误:
[ERROR] Failed to execute goal org.owasp:dependency-check-maven:6.2.2:aggregate (default-cli) on project project: One or more exceptions occurred during dependency-check analysis: One or more exceptions occurred during analysis:
[ERROR] AnalysisException: Failed to read results from the NPM Audit API (NodeAuditAnalyzer); the analyzer is being disabled and may result in false negatives.
[ERROR] …
Run Code Online (Sandbox Code Playgroud)