标签
的名字
一个字母数字字符串(允许使用下划线),用于标识步骤。
类型
必须MvnBuild
对于这个步骤类型。
配置
指定步骤执行环境的所有配置选择。该步骤继承Bash/PowerShell步骤配置标签,包括这些相关的标签:
标签 |
使用说明 |
必需的/可选 |
---|---|---|
集成 |
必须指定Artifactory集成 | 要求 |
input2022世界杯阿根廷预选赛赛程Resources |
必须指定一个GitRepo资源。mvn命令在Git存储库中的文件上执行构建 也可以选择指定文件规范资源,指定要复制到的文件 |
要求 |
output2022世界杯阿根廷预选赛赛程Resources |
必须指定BuildInfo资源如果 |
可能需要 |
此外,可以定义这些标记来支持该步骤的本机操作:
标签 |
使用说明 |
必需的/可选 |
---|---|---|
mvnCommand |
指定Maven使用的选项的命令行字符串。 默认是 |
可选 |
sourceLocation |
指定源文件的位置。默认情况下,它被设置为GitRepo资源的根目录。Defaults到GitRepo的根目录。 如果源文件不在根目录中,则需要。 |
可能需要 |
resolverSnapshotRepo |
Artifactory存储库来解析快照依赖项。如果设置, 不要和 |
可选 |
resolverReleaseRepo |
Artifactory存储库来解决版本依赖关系。如果设置, 不要和 |
可选 |
deployerSnapshotRepo |
由MvnBuild创建的快照构件被上传到这个Artifactory存储库。如果设置, 不要和 |
可选 |
deployerReleaseRepo |
由MvnBuild创建的发布构件被上传到这个Artifactory存储库。如果设置,则deployerSnapshot 不要和 |
可选 |
forceXrayScan |
当设置为 |
可选 |
failOnScan |
当设置为 |
可选 |
autoPublishBuildInfo |
当设置为 |
可选 |
configFileName |
JFrog CLI mvn-config文件的名称。的 只有当您已将此配置文件提交到源文件时,才应使用此选项 |
可选 |
configFileLocation |
指定包含JFrog CLI mvn-config文件的目录 只有当您已将此配置文件提交到源文件时,才应使用此选项 |
可选 |
执行
声明在执行前和执行后阶段执行的shell命令序列集合:标签 | 使用说明 | 必需的/可选 |
---|---|---|
onStart |
在本机操作之前执行的命令 | 可选 |
调用onSuccess |
成功完成后执行的命令 | 可选 |
onFailure |
在完成失败时执行的命令 | 可选 |
onComplete |
在任何补全时执行的命令 | 可选 |
对象执行的操作onExecute
阶段是此步骤类型固有的,不能被覆盖。
例子
下面的示例展示了配置MvnBuild步骤的几种方法。
全管道示例
- 此示例需要一个Artifactory集成和一个GitHub集成.
- 本例中的管道DSL是可以在这个存储库在JFrogGitHub帐户。
- 有关完整的教程,请参见管道示例:Maven构建.
#这个配置文件是模板化的,这样可以很容易地自定义。值可以用值来提供。yml文件。模板:true #需要本地模板yml资2022世界杯阿根廷预选赛赛程源:—名称:mvn_repo类型:GitRepo配置:路径:{{. values。repoPath}} getprovider: {{. values。gitProvider}} - name: mvn_build_info类型:BuildInfo配置:sourceArtifactory: {{. values。一个rtifactory }} pipelines: - name: demo_maven steps: - name: mvn_build_step type: MvnBuild configuration: deployerSnapshotRepo: {{ .Values.deployerRepo }} deployerReleaseRepo: {{ .Values.deployerRepo }} inputResources: - name: mvn_repo integrations: - name: {{ .Values.artifactory }} - name: publish_build type: PublishBuildInfo configuration: forceXrayScan: false inputSteps: - name: mvn_build_step outputResources: - name: mvn_build_info
使用默认值的基本示例
MvnBuild最基本的形式。使用所有默认值。方法中指定的repo的根目录input2022世界杯阿根廷预选赛赛程Resources
数组,并执行MVN清洁安装
.它不发布构建或请求x光扫描。
管道:—名称:MyMavenPipeline步骤:—名称:MavenWithArtifactory类型:MvnBuild配置:集成:—名称:art inputResources:—名称:mvn_repo2022世界杯阿根廷预选赛赛程
使用Artifactory作为解析器和部署器
本例使用Artifactory作为解析器和部署器,以便从指定的repo中提取项目的依赖项,并将生成的工件推回Artifactory。它还向Artifactory发布构建信息并请求x光扫描。
管线:—name: MyMavenPipeline步骤:—name: MavenWithAll type: MvnBuild configuration: integrations:—name: art inputResources:—name: 2022世界杯阿根廷预选赛赛程mvn_repo outputResources:—name: mvn_build_info mvnCommand: clean install test sourceLocation: mvnproject resolverSnapshotRepo: snapshots-remote-maven resolverReleaseRepo: releases-remote-maven deployerSnapshotRepo: snapshots-local-maven deployerReleaseRepo: releases-local-maven forceXrayScan: true failOnScan: true autoPublishBuildInfo: true
使用配置文件
这个例子使用一个已提交的配置文件来完成相同的事情示例2所做的事。
管线:—name: MyMavenPipeline步骤:—name: MvnWithConfig type: MvnBuild configuration: integrations:—name: art inputResources:—name: 2022世界杯阿根廷预选赛赛程mvn_repo outputResources:—name: mvn_build_info mvnCommand: clean install test sourceLocation: mvnproject configFileLocation: "." configFileName: mvn-art-config forceXrayScan: true failOnScan: true autopubblishbuildinfo: true
工作原理
当你使用MvnBuild管道中的本机步骤,它在后台执行以下操作:
jfrog rt配置#配置jfrog CLI yaml中列出与集成jfrog rt mvn-config #如果configFileName configFileLocation没有设置在yaml jfrog rt mvn mvnCommand #主要maven构建命令add_run_variables #美元节省一些信息在运行状态下对未来步骤参考jfrog rt build-collect-env #收集构建环境,准备构建发布jfrog rt构建发布#只有autoPublishBuildInfo是真的write_output #更新buildinfo资源,如果当前jfrog rt build-scan #如果forceXrayScan为真add_run_files #添加BuildInfo运行状态