使用chef / artifactory-client作为主厨remote_file提供者

时间:2017-08-01 12:36:57

标签: chef artifactory chef-recipe

主厨developed a Ruby gem for interacting with Artifactory,厨师烹饪书可用于下载工件和执行其他操作。我假设它将被用作remote_file之类的资源的提供者,但是没有提供示例代码,在Chef中明确使用它的文档,或采用这种方法的其他人。

  1. 您如何将Chef与Artifactory集成在一起?
  2. 您的食谱/食谱是否可以重新分发而不与Artifactory紧密耦合?

3 个答案:

答案 0 :(得分:1)

这两个项目(Artifactory gem和Chef)没有关系,前者不是食谱。有一个名为artifact的食谱,其中包含从Artifactory下载的自定义资源,但我不确定它是否已经维护。

答案 1 :(得分:1)

Artifactory是一个通用的二进制托管软件,即使您不需要其各种特定的API兼容选项(RubyGems / PyPi / Docker / etc),您仍然可以创建一个像网络一样的“哑”文件存储库可以匿名或通过身份验证方法提供文件的服务器。

它也是一个出色的缓存代理,我经常在其他“哑”文件存储库之前使用它,比如NodeJS.org下载目录,用于NodeJS二进制存档或其他远程安装程序,我想确保我有备份我在管道中使用的任何版本的副本。

要将其用于“remote_file”,您只需创建一个名为“local-config-artifacts”的新存储库,然后将文件上传到那里。关于Artifactory的非常好的事情是它可以为你执行元数据计算(md5 / sha1 / sha256 / etc),然后你可以在你的食谱配方中输入这个值,这样你就可以进行“幂等”的下载如果校验和发生变化,请下载。

答案 2 :(得分:0)

有一个维基页面,介绍如何在Artifactory中配置Chef存储库以及如何配置刀具以从Artifactory安装: https://www.jfrog.com/confluence/display/RTF/Chef+Cookbook+Repositories

这是你在找什么?