5.使用Artifactory。x ?
JFrog Artifactoryx用户指南
有问题吗?想要报告问题?联系JFrog支持
概述
Artifactory通过TeamCity Artifactory插件提供了与TeamCity CI Server的紧密集成。除了管理构件到Artifactory的有效部署之外,插件还允许您捕获有关已部署的构件、已解决的依赖关系、与TeamCity构建运行相关的环境数据等信息,从而有效地为您的构建提供完整的可跟踪性。
从版本2.1.0开始,TeamCity Artifactory插件为发布管理和推广提供了强大的特性。详情请参阅TeamCity Artifactory插件-发布管理.
在开始之前
请参阅有关的一般资料Artifactory的构建集成在使用TeamCity Artifactory插件之前。
源代码可用!
TeamCity Artifactory插件是一个GitHub上的开源项目你可以自由浏览和分叉。
构建运行器支持
TeamCity Artifactory插件支持大多数构建运行器类型,包括:Maven2, Maven 3,常春藤/蚂蚁(有Ivy模块支持),Gradle,NAnt,MSBuild,FxCop而且知识产权.
安装插件
插件部署到TeamCity的方法是将打包的插件放在$ TEAMCITY_USER_HOME /插件
文件夹和重新启动TeamCity。您也可以通过TeamCity UI via来实现这一点管理|插件列表|上传插件Zip并从文件系统中选择zip文件。您需要重新启动TeamCity (tomcat)才能使插件生效。
从网站下载插件2.3.1版(最新版本)在这里.
删除旧版本
如果您使用的是旧版本的插件,请确保在升级到新版本之前将其删除
配置
要使用TeamCity Artifactory插件,您首先需要在TeamCity的服务器配置中配置您的Artifactory服务器。然后,您可以设置一个项目构建运行器,将构件和build Info部署到一个已配置的Artifactory服务器上的存储库。
配置系统范围的Artifactory服务器
要使Artifactory服务器对项目运行器配置全局可用,必须在管理|集成| Artifactory.
选择创建新的Artifactory服务器配置并填写Artifactory服务器的URL。
部署人员凭据可以在全局级别为所有构建设置,但也可以在项目构建级别覆盖和设置。
为解析器存储库指定用户名和密码是可选的。它仅在查询Artifactory的REST API以获得配置的存储库列表时使用,并且仅在目标实例不允许匿名访问时使用。
配置特定于项目的运行程序
编辑项目特定的配置
要设置一个项目运行器,将构建信息和工件部署到Artifactory,请转到项目管理并选择要配置的项目。
然后,在构建配置部分,单击编辑要配置的版本的链接。
下生成配置设置,选择相关的构建步骤然后点击编辑要配置的生成步骤的链接。
中选择值时Artifactory服务器URL字段时,将查询所选服务器以获得已配置存储库的列表(使用对应的Artifactory服务器配置)。这就填充了目标库字段,其中包含可选择部署到的存储库列表。
点击自由文本模式复选框允许您以自由文本的形式键入存储库名称。你也可以将变量作为文本的一部分。
例如:libs-%variableName%
配置错误
如果目标库list保持为空,检查指定的Artifactory服务器URL、凭据和代理信息(如果提供)是否有效。
关于可能发生的通信错误的任何信息都可以在TeamCity服务器日志中找到。
运行License检查
如果您正在使用Artifactory Pro,您可以从许可证管理的商品作为构建的一部分发现和处理第三方依赖项许可问题的特性。
如果你查看运行许可证检查复选框,Artifactory将扫描并检查此构建使用的所有依赖项的许可证。还可以指定应通过电子邮件接收任何许可证违反通知的收件人列表。
黑鸭代码中心集成
如果您正在使用Artifactory Pro,并有一个帐户黑鸭子代码中心,您可以通过自动的、非侵入性的、开源组件审批流程运行构建,并监视安全漏洞。
通用构建集成
通用构建集成为以下运行程序类型提供了构建信息支持:
- 命令行
- FxCop
- MSBuild
- 耙
- Powershell
- XCode项目
- NuGet发布
- NAnt
- Visual Studio (sln)
- Visual Studio 2003
- SBT, Scala构建工具
这允许上面的构建:
- 上传任何工件到Artifactory,连同自定义属性元数据,并保持已发布的工件与TeamCity构建相关联。
- 从Artifactory下载构建所需的构件。
您可以使用“文件规格”或“遗留模式”来定义要上传和下载的构件。
文件规格
文件规格以JSON格式指定。您可以读取File Spec模式在这里.
遗留模式(已弃用)
从1.8.0版本开始,遗留模式已弃用,并将在未来的版本中删除。
自定义发布的工件 |
允许您指定构建生成的工件文件应该发布到Artifactory。在构建的最后,插件根据指定的工件模式在构建的签出目录中定位工件,并将它们发布到Artifactory的一个或多个位置,可选地为每个部署的工件的目标路径应用映射。发布工件的模式和映射语法类似于TeamCity所使用的构建构件. |
自定义构建依赖项 |
允许您指定在运行构建之前应该从Artifactory下载的已发布工件的依赖项模式。通过使用基于查询的解析,您可以对解析和下载哪些工件进行详细的控制,在您的工件路径中添加一个具有工件在下载之前应该具有的属性的查询。欲了解更多信息,请阅读此处属性解析. |
从版本2.1.4开始,上述配置不向后兼容,您可能需要重新保存构建配置以使其正常运行。
如果没有找到匹配的工件,请记住,这些参数可能是区分大小写的,这取决于运行它们的操作系统、代理和服务器。
将可搜索参数附加到Build-Info和已发布工件
在生成配置设置您可以选择参数定义应该附加到工件及其相应的构建信息的系统属性或环境变量。
要定义参数,请单击添加新参数按钮。
填写相应的字段。
与通过Artifactory运行的构建相关的参数是:
buildInfo.property。*
所有以这个前缀开头的属性都被添加到build-info的根属性中artifactory.deploy。*
-以此前缀开头的所有属性都附加到任何已部署的工件上
您可以在单个文件中指定所有属性,然后定义另一个指向该文件的属性。
要将插件指向属性文件,请定义名为buildInfoConfig.propertiesFile
并将其值设置为属性文件的绝对路径。
也可以将插件指向包含上述属性的属性文件。
属性文件应该位于运行构建代理的机器上,不是在服务器上!
查看项目特定的配置
中可以查看现有项目配置设置下项目| $PROJECT_NAME | $BUILD_NAME:
使用Artifactory插件运行构建
一旦您完成了项目运行器的设置,您就可以运行项目构建。Artifactory插件在构建结束时生效,并执行以下操作:
- 对于所有构建运行器类型——将指定的已发布构件发布到选定的目标存储库,并应用相应的路径映射。
- 对于Maven或Ivy/Ant构建运行器——在构建结束时将所有工件一起部署到选定的目标存储库(而不是像Maven和Ivy那样在每个模块构建结束时分别部署)。
- 将Artifactory BuildInfo部署到Artifactory,提供Artifactory中构建的完整可追溯性,链接回到TeamCity中的构建。
你也可以从构建运行视图中直接链接到Artifactory中的构建信息:
触发构建对构件变化的反应
这个插件允许你设置一种新类型的触发器,周期性地轮询Artifactory中的一个路径,一个文件夹或一个单独的文件。只要在轮询元素中检测到更改,就会触发TeamCity构建。例如,当新的工件部署到Artifactory中的指定路径时,构建可能会被触发。
需要Artifactory Pro
触发构建只在Artifactory Pro中可用
要配置新的生成触发器,请执行管理,选择$ project_name | $ build_name然后,在生成配置设置选择触发器。
单击添加新的触发器按钮以选择Artifactory构建触发器
选择Artifactory服务器URL和目标库中。
为所选存储库完成有效部署人员的用户名和密码字段。
部署permssion
指定的用户必须对存储库具有部署权限
然后,在值得关注的项目,指定所选存储库中的路径,其中的更改将自动触发生成。
在观看项目中尽可能具体
为了确定是否发生了更改,Artifactory必须遍历中指定的所有文件夹及其子文件夹注意事项.如果指定的文件夹有很多内容和子文件夹,这是一项资源密集型操作,可能会花费很长时间。
因此,我们建议在指定文件夹时尽可能具体注意事项.
代理配置
如果通过代理访问Artifactory服务器,则需要通过在$ TEAMCITY_USER_HOME / .BuildServer / config / internal.properties
文件。如果该文件不存在,则需要创建它。
Org.jfrog.artifactory.proxy.host org.jfrog.artifactory.proxy.port org.jfrog.artifactory.proxy.username org.jfrog.artifactory.proxy.password
执照
TeamCity Artifactory插件在Apache v2许可证下可用。
观看录像
要查看Teamcity插件的实际运行情况,您可以观看下面的简短演示视频。