首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在厨师食谱中创建两个任务之间的依赖关系?

如何在厨师食谱中创建两个任务之间的依赖关系?
EN

Server Fault用户
提问于 2018-01-04 16:16:51
回答 1查看 121关注 0票数 0

我写了一本厨师食谱,用来配置公司的服务器。

其中一个任务是安装一个名为" pssh“的"apt_package”,另一个任务是在pssh包安装之后运行。

实际上,第二个任务是在包安装之前运行,然后主厨-客户端运行失败,说明相关文件丢失,因为pssh包安装创建了它。

我正在尝试将第二个任务配置为只在包安装任务完成后才运行。

以下是相关代码:

代码语言:javascript
复制
apt_package 'pssh' do
  action :install
  subscribes :run, 'file[/usr/bin/pssh]', :before
end

file '/usr/bin/pssh' do
  owner 'root'
  group 'root'
  mode 0755
  content ::File.open("/usr/bin/parallel-ssh").read
  action :create
end

我试过使用“通知”和“订阅”,但没有结果,第二个任务总是先运行,导致主厨-客户端运行失败。

如何在任务之间建立依赖关系?

EN

回答 1

Server Fault用户

发布于 2018-01-08 12:12:41

问题是你写东西的方式,文件读取发生在编译时。请查看https://coderanger.net/two-pass以获得修复它的详细信息,但简要地说,您需要在文件读取时使用lazy{}助手。

票数 0
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/890728

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档