JFrog Artifactoryx文档
要获得最新版本,请访问JFrog统一平台
概述
Artifactory支持Maven构建在常用的构建服务器上,例如詹金斯,TeamCity而且竹子通过相应的插件为这些CI服务器。然而,在过去的几年里,基于云的构建服务器的流行已经产生了像hth华体会最新官方网站特拉维斯CI,drone.io而且Codeship.问题是,这些都不是传统意义上的“可插拔”。因此,要支持在基于云的构建服务器上运行的Maven构建,可以使用Maven Artifactory插件。
如果您的CI服务器没有插件,您可以使用Maven Artifactory插件(例如,基于云的CI服务器),或者如果您有非常特定的需求,而您的CI服务器插件不支持这些需求。
只使用一个插件
无论您的构建生态系统是如何设置的,请确保您只使用其中一个Artifactory插件(对于CI服务器或构建工具)以避免冲突指令和重复构建。
源代码可用!
Maven Artifactory插件是一个GitHub上的开源项目你可以自由浏览和分叉。
通过Maven Artifactory插件,Artifactory与Maven构建完全集成,并允许您执行以下操作:
- 在Artifactory元数据中将属性附加到已发布的工件。
- 捕获一个BuildInfo对象,该对象可以传递给Artifactory REST API以提供完全可跟踪的构建上下文。
- 在构建结束时自动发布所有构建构件。
使用
Maven Artifactory Plugin的坐标为org.jfrog。buildinfo: artifactory-maven-plugin: 2。6.1.
可以在网上观看Bintray,并可通过JCenter库.
典型的构建插件配置如下:
…<插件> < groupId > org.jfrog。buildinfo artifactory- mavin -plugin 2.6.1 false build-info publish awesome qa https://oss.jfrog.org deployer {DESede}… libbs -release-local libbs -snapshot-local
插件的调用阶段为"验证
"我们建议您不要更改它,以便在Maven构建的生命周期中尽早调用该插件。
配置
上面的示例配置Artifactory出版商,将构建构件部署到释放或者是快照的存储库Artifactory的公共OSS实例当mvn部署
执行.
不过,Maven Artifactory Plugin提供了许多其他配置,您可以通过运行这些配置来查看mvn -X验证
,如下所示:
< deployProperties > . ... < envvarlcludepatterns > ..true/false N .. .. .. .. .. true/false true/false .. .. true/false true/false .. .. .. .. .. N N .. .. .. true/false true/false true/false .. .. .. .. true/false true/false true/false .. ..
|
指定属性您可以附加到已发布的工件。例如: < deployProperties > < groupId > ${项目。groupId} < / groupId > < artifactId > ${项目。artifactId} < / artifactId > <版本> ${项目。版本}< /版本> < / deployProperties > |
|
指定环境变量是否作为的一部分发布BuildInfo 在收集变量时应用元数据和包含或排除模式的元数据 |
|
类的组合定义一个Artifactory存储库,在其中发布构建构件 将部署构建构件,如果 |
|
更新BuildInfo 与构建构件一起发布的元数据。您可以配置是否BuildInfo 类发布元数据<出版商> 配置。 |
|
控制第三方license的自动发现和违规监控 |
|
配置ArtifactoryBlackDuck集成。注意,您需要指定真正< runChecks > < / runChecks > 激活它。 |
读取环境变量和系统属性
每个构建服务器都提供自己的一组环境变量。你可以在配置插件时使用这些变量,如下例所示:
{{ARTIFACTORY_CONTEXT_URL|"https://oss.jfrog.org"}} …{{DRONE_BUILD_NUMBER|TRAVIS_BUILD_NUMBER|CI_BUILD_NUMBER|BUILD_NUMBER|"333"}} {{DRONE_BUILD_URL|CI_BUILD_URL|BUILD_URL}}
任何插件配置值都可以包含几个{{. .}}
表达式。每个表达式可以包含一个或多个要使用的环境变量或系统属性。
表达式语法允许您根据以下规则提供足够的变量来适应任何构建服务器需求:
- 每个表达式可以包含几个变量,由' | '字符分隔,用于配置值
- 列表中的最后一个值是默认值,如果前面的变量都不能用作环境变量或系统属性,则使用该值
例如,对于表达式{{V1 | V2 |“defaultValue "}}
插件将尝试定位环境变量V1
,则系统属性V1
,则为环境变量或系统属性V2
,如果这些都没有,”defaultValue
将被使用。
如果最后一个值不是字符串(由引号表示),并且变量无法解析,零
将被使用(例如,用于表达{{V1 | V2}}
在哪里都V1
也不V2
可以解决)。
方法将其他工件附加到模块构建助手Maven插件.
确保您的Artifactory发行商凭证安全
如果您希望保留Artifactory出版商证书(用户名和密码)安全(而不是在插件配置中作为自由文本提供),我们建议将它们存储为环境变量或系统属性,并在需要时让插件读取它们。由于通常的Maven部署不支持环境变量或系统属性settings.xml
这个功能是Maven Artifactory Plugin所独有的。
例子
下面的项目提供了一个使用插件的工作示例: