JFrog帮助中心

我们的新门户即将推出!
文档+知识库







概述

MvnBuild本机步骤执行Maven项目构建在Git存储库中的文件上。它还可以将构建信息发布到Artifactory。

如果您的maven项目已经使用Maven Artifactory插件,请参阅为管道设置Maven构建获取有关配置Maven设置以在JFrog pipeline中使用的信息。

使用此步骤会自动选择Java作为语言,并在节点中适当地引导运行时环境。

YAML模式

MvnBuild
- name: 步骤:- name:  type: MvnBuild配置:#从bash继承所有标签;//m.si-fil.com/confluence/display/JFROG/Bash mvnCommand:  # optional sourceLocation:  # optional resolverSnapshotRepo:  # optional deployerSnapshotRepo:  # optional deployerReleaseRepo:  # optional forceXrayScan:  # optional failOnScan:  # default true autoPublishBuildInfo:  # optional configFileLocation:  # optional configFileName:  # optional integrations: - name:<人工集成> # required - inputResources: - name2022世界杯阿根廷预选赛赛程:  # required - name:  # optional - outputResources: - name:  #如果autoPublishBuildInfo是true执行:onStart: - echo "准备工作…" onSuccess: - echo "Job done!" onFailure: - echo "呃哦,出错了" onComplete: #always - echo " cleanup up some stuff"
页面内容

标签

名字

一个字母数字标识步骤的字符串(允许使用下划线)。

类型

必须MvnBuild对于这一步,输入:

配置

指定步骤执行环境的所有配置选择。此步骤继承Bash/PowerShell步骤配置标签,包括这些相关的标签:

标签

使用说明

必需的/可选

集成 必须指定Artifactory集成 要求
input2022世界杯阿根廷预选赛赛程Resources

必须指定一个GitRepo资源。mvn命令在Git存储库中的文件上执行构建sourceLocation

还可以选择指定文件规范资源,该资源指定要复制到的文件sourceLocation构建

要求
output2022世界杯阿根廷预选赛赛程Resources

必须指定BuildInfo资源如果autoPublishBuildInfo设为真正的如果JFROG_CLI_BUILD_NAMEJFROG_CLI_BUILD_NUMBER设置为管道或步骤的环境变量,则该名称和/或数字将用于输出BuildInfo。否则,默认的buildNamebuildNumberpipeline_name美元run_number美元。

可能需要


此外,可以定义这些标签来支持步骤的本机操作:

所有本地步骤都派生自Bash的一步。这意味着所有步骤都共享来自Bash的相同基本标记集,而本机步骤也有自己的附加标记,这些标记支持步骤的特定功能。所以熟悉这个很重要Bash步骤定义,因为它是所有其他步骤定义的核心。

标签

使用说明

必需的/可选
mvnCommand

指定要与Maven一起使用的选项的命令行字符串。

默认是全新安装

可选
sourceLocation

指定源文件的位置。默认情况下,它被设置为GitRepo资源的根目录。D默认为GitRepo的根目录。

如果源文件不在根目录下,则需要。

可能需要
resolverSnapshotRepo

用于解析快照依赖关系的人工存储库。如果设置,resolverReleaseRepo也是必需的。

不要与…一起使用configFileNameconfigFileLocation

可选
resolverReleaseRepo

用于解析版本依赖关系的人工存储库。如果设置,resolverSnapshotRepo也是必需的。

不要与…一起使用configFileNameconfigFileLocation

可选
deployerSnapshotRepo

MvnBuild创建的快照构件被上传到这个Artifactory存储库。如果设置,deployerReleaseRepo也是必需的。

不要与…一起使用configFileNameconfigFileLocation

可选
deployerReleaseRepo

由MvnBuild创建的发布构件被上传到这个Artifactory存储库。如果设置,则使用deployerSnapshot回购也是必需的。

不要与…一起使用configFileNameconfigFileLocation

可选
forceXrayScan

当设置为真正的,在发布到Artifactory后强制进行x射线扫描。默认是

可选
failOnScan

当设置为真正的,w然后是x光策略规则失败的构建复选框,则x射线扫描失败将导致该步骤失败。默认是真正的

可选
autoPublishBuildInfo

当设置为真正的,将构建信息发布到Artifactory。在outputResources列表中需要2022世界杯阿根廷预选赛赛程一个BuildInfo资源。默认是

可选
configFileName

JFrog命令行mvn-config文件的名称。的serverID配置文件中的名称应该与Artifactory集成名称匹配。如果设置,configFileLocation也是必需的。


只有当您已将此配置文件提交到源文件时,才应该使用此选项

可选
configFileLocation

指定包含JFrog CLI mvn-config文件的目录,相对于sourceLocation。如果设置,configFileName也是必需的。

只有当您已将此配置文件提交到源文件时,才应该使用此选项

可选


执行

声明要在执行前和执行后阶段执行的shell命令序列的集合:
标签 使用说明 必需的/可选
onStart 在本机操作之前执行的命令 可选
调用onSuccess 成功完成时执行的命令 可选
onFailure 完成失败时执行的命令 可选
onComplete 在任何补全时执行的命令 可选


执行的操作onExecute阶段是此步骤类型所固有的,并且不能被覆盖。


例子

下面的示例展示了配置MvnBuild步骤的几种方法。

全管道示例

这个配置文件是模板化的,所以它可以很容易地定制。值可以与值一起提供。yml文件。template: true #本地模板需要valuesFilePath: ./values。—名称:2022世界杯阿根廷预选赛赛程mvn_repo类型:GitRepo配置:路径:{{。repoPath}} gitProvider: {{. values。gitProvider}} -名称: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射线扫描。

MvnBuild
管道:—名称:MyMavenPipeline步骤:—名称:MavenWithArtifactory类型:MvnBuild配置:集成:—名称:art inputResources:—名称:mvn_repo2022世界杯阿根廷预选赛赛程

使用Artifactory作为解析器和部署器

本例使用Artifactory作为解析器和部署器,这样您的项目的依赖项就会从指定的repo中提取出来,并将生成的工件推回Artifactory。它还向Artifactory发布构建信息,并请求进行x射线扫描。

MvnBuild
管道:—名称:MyMavenPipeline步骤:—名称:MavenWithAll类型:MvnBuild配置:集成:—名称:art inputResources:—名称:mvn_repo outputResources:—名称:mvn_build_2022世界杯阿根廷预选赛赛程info mvnCommand: clean install test sourceLocation: mvnproject resolverSnapshotRepo:快照-remote-maven resolverReleaseRepo:释放-remote-maven deployerSnapshotRepo:快照-local-maven deployerReleaseRepo:释放-local-maven forceXrayScan: true failOnScan: true autoPublishBuildInfo: true

使用配置文件

这个例子使用一个已提交的配置文件来完成与上面相同的事情示例2所做的事。

MvnBuild
管道:-名称:MyMavenPipeline步骤:-名称:MvnWithConfig类型:MvnBuild配置:集成:-名称:art inputResources: -名称:mvn_repo outputResources: -名称:mvn_buil2022世界杯阿根廷预选赛赛程d_info mvnCommand: clean install test sourceLocation: mvnproject configFileLocation: "." configFileName: mvn-art-config forceXrayScan: true failOnScan: true autoPublishBuildInfo: true

它是如何工作的

当你使用MvnBuild管道中的原生步骤,它在后台执行以下操作:

MvnBuildCommands
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添加到运行状态
  • 没有标签
版权所有©2023 JFrog Ltd.