Saltstack安装boto然后使用boto_ * states

时间:2016-03-02 21:25:59

标签: salt-stack

我正在尝试使用Ubuntu 14.04上的saltstack构建一些EC2资源。问题是14.04附带的python-boto包太旧了,我需要使用pip来安装更新的东西。我有以下SLS来表达这种状态:

python-boto:
  pkg.purged

python-pip:
  pkg.installed

boto:
  pip.installed:
    - name: boto >= 2.6
    - require:
      - pkg: python-pip

default_lc:
  boto_lc.present:
    - require:
      - pip: boto
    - image_id: ami-3d2cce5d 
    - key_name: uberhaus
    - security_groups:
      - default
    - instance_type: m3.medium
    - volume_type: gp2

第一次运行highstate时,boto_lc资源失败。在随后的高阶段运行中,它成功了。

我该如何处理?我是否需要使用Reactor或Orchestrate以某种方式确保boto资源仅在上次运行之后才能运行以安装boto?

1 个答案:

答案 0 :(得分:0)

我认为你需要在pip.installed状态下使用'reload_modules:True',然后使boto模块可用于在后续状态下使用salt。