Ansible,从 Artifactory 的一般 repo 下载 msi 文件
Posted
技术标签:
【中文标题】Ansible,从 Artifactory 的一般 repo 下载 msi 文件【英文标题】:Ansible, download msi file from general repo in Artifactory 【发布时间】:2017-06-01 05:07:24 【问题描述】:我们在 Artifactory Generic 存储库中管理我们的投放。现在,我们要部署预定义版本,假设位于 Artifactory 内的 MY_REPO/ver1/file.msi 中。 如何使用 ansible 完成? 我已经看到 ansible 有 maven_artifact 但是,它可以与通用 repo 一起使用吗?如何传递源路径(MY_REPO/ver1/file.msi)? 似乎 maven_artifact 仅适用于最新版本,无法定义源路径。
【问题讨论】:
【参考方案1】:您可以使用get_url 并在通用存储库上定义特殊布局来检测版本。 在您的情况下,布局将是“[orgPath]/ver[baseRev]/[module].[ext]” 将“文件夹/文件集成修订正则表达式”设置为“.*”
那么您必须根据布局部署您的 msi:“MY_REPO/MY_ORG/ver1/file.msi”
这样做您可以使用以下网址获取最新版本:“[ARTIFACTORY_HOST]:[ARTIFACTORY_PORT]/artifactory/MY_REPO/MY_ORG/ver[RELEASE]/file.msi”
或者使用参数代替[RELEASE]获取指定版本
所以最后这应该可以工作:
名称:使用 Artifactory API KEY 下载最新的 msi 获取网址: 网址:[ARTIFACTORY_HOST]:[ARTIFACTORY_PORT]/artifactory/MY_REPO/MY_ORG/ver[RELEASE]/file.msi 目的地:[YOUR_DEST] 标头:'X-JFrog-Art-Api:[API_KEY]'
【讨论】:
【参考方案2】:- name: Download README file from artifactory
get_url:
url: https://artifactoryServerName.jfrog.io/artifactoryServerName/example-repo-local/README.md
headers: "X-JFrog-Art-Api:API_KEY"
dest: /tmp/
mode: 0644
在哪里可以找到artifactory api key:https://www.jfrog.com/confluence/display/RTF/Updating+Your+Profile
【讨论】:
在用户配置文件中,您可以生成/获取您的 API KEY(或重新生成一个新的)。您也可以使用 REST API 创建/获取它:jfrog.com/confluence/display/RTF5X/…以上是关于Ansible,从 Artifactory 的一般 repo 下载 msi 文件的主要内容,如果未能解决你的问题,请参考以下文章