2

我有两个食谱:

  1. 用我的 .bashrc 之类的东西配置我的主目录,在我使用的几乎每台机器上运行
  2. 挂载一个包含我的主目录的 EBS 卷。这一次只能由一个 EC2 实例使用,但让我可以轻松迁移到新实例

对于此 EC2 实例,当它首次启动时,我需要在配方 #1 之前执行配方 #2,否则该卷将不会被挂载。如何确保明确强制执行此执行顺序?

4

2 回答 2

14

Chef始终按照您指定的顺序执行食谱。它不会随意对事物进行重新排序。因此,如果您希望一个配方在另一个配方之前运行,只需按该顺序加载它们(例如在run_list

为了进一步加强这一点(以您的配方之间的额外耦合为代价),您还可以include_recipe在第二个配方的开头使用来加载第一个。

于 2012-07-01T00:06:37.560 回答
-3

如果您希望在登录时(而不是启动时)完成这两个操作...

...如果您需要按特定顺序完成它们...

...那么你应该简单地编写一个调用它们的脚本。以正确的顺序。

恕我直言...

于 2012-06-30T22:35:08.817 回答