云客户?
免费开始>
在MyJFrog >中升级
云有什么新>





概述

MvnBuild本机步骤执行Maven项目构建Git存储库中的文件。可选地,它还可以向Artifactory发布构建信息。

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

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

YAML模式

MvnBuild
管道:- name: 步骤:- name: 类型:MvnBuild配置:#继承所有的标签从bash;//www.si-fil.com/confluence/display/JFROG/Bash mvnCommand:  # optional sourceLocation:  # optional resolverSnapshotRepo:  # optional resolverReleaseRepo:  # optional deployerSnapshotRepo:  # optional deployerReleaseRepo:  # optional forceXrayScan:  # optional failOnScan:  # default true autopubishbuildinfo:  # optional configFileLocation:  # optional configFileName:  # optional integrations: - name: # required input2022世界杯阿根廷预选赛赛程Resources: - name:  # required - name:  # optional outputResources: - name:  # if autopubishbuildinfo是真执行:onStart: - echo "Preparing for work…" onSuccess: - echo "Job well done!" onFailure: - echo "uh oh, something went wrong" 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。否则,默认buildName而且buildNumberpipeline_name美元而且run_number美元。

可能需要


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

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

标签

使用说明

必需的/可选
mvnCommand

指定Maven使用的选项的命令行字符串。

默认是全新安装

可选
sourceLocation

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

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

可能需要
resolverSnapshotRepo

Artifactory存储库来解析快照依赖项。如果设置,resolverReleaseRepo也是必需的。

不要和configFileName而且configFileLocation

可选
resolverReleaseRepo

Artifactory存储库来解决版本依赖关系。如果设置,resolverSnapshotRepo也是必需的。

不要和configFileName而且configFileLocation

可选
deployerSnapshotRepo

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

不要和configFileName而且configFileLocation

可选
deployerReleaseRepo

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

不要和configFileName而且configFileLocation

可选
forceXrayScan

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

可选
failOnScan

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

可选
autoPublishBuildInfo

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

可选
configFileName

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


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

可选
configFileLocation

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

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

可选


执行

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


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


例子

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

全管道示例

#这个配置文件是模板化的,这样可以很容易地自定义。值可以用值来提供。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光扫描。

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

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

本例使用Artifactory作为解析器和部署器,以便从指定的repo中提取项目的依赖项,并将生成的工件推回Artifactory。它还向Artifactory发布构建信息并请求x光扫描。

MvnBuild
管线:—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所做的事。

MvnBuild
管线:—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管道中的本机步骤,它在后台执行以下操作:

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