Como você executa um cmd.script depois que os arquivos de pré-requisitos foram baixados?

5

Eu tenho um caso de uso muito simples que estou tentando seguir:

Eu preciso baixar e instalar alguns pacotes fonte tar.gz do master e então rodar um script para compilar e instalar todos eles.

Eu sei que esta é provavelmente uma questão básica, mas qualquer ponteiro será apreciado.

/usr/local/src/source1.tar.gz:
  file.managed:
    - source: salt://sources/source1.tar.gz
    - user: root
    - group: root
    - mode: 644

/usr/local/src/source2.tar.gz:
  file.managed:
    - source: salt://sources/source2.tar.gz
    - user: root
    - group: root
    - mode: 644

/usr/local/src/source3.tar.gz:
  file.managed:
    - source: salt://sources/source3.tar.gz
    - user: root
    - group: root
    - mode: 644

//I need something like this, but am not sure how to do it
compile_and_install:
  - require: /usr/local/src/source1.tar.gz
  - require: /usr/local/src/source2.tar.gz
  - require: /usr/local/src/source3.tar.gz
  cmd.script:
    - source: salt://scripts/compile_and_install.sh
    - user: root
    - group: root
    - shell: /bin/bash
    
por Carl 17.07.2013 / 23:21

2 respostas

6

Resumindo, no caso de ajudar alguém no futuro:

/usr/local/src/source1.tar.gz:
  file.managed:
    - source: salt://sources/source1.tar.gz
    - user: root
    - group: root
    - mode: 644

/usr/local/src/source2.tar.gz:
  file.managed:
    - source: salt://sources/source2.tar.gz
    - user: root
    - group: root
    - mode: 644

/usr/local/src/source3.tar.gz:
  file.managed:
    - source: salt://sources/source3.tar.gz
    - user: root
    - group: root
    - mode: 644

compile_and_install:
  cmd.script:
    - require:
      - file: /usr/local/src/source1.tar.gz
      - file: /usr/local/src/source2.tar.gz
      - file: /usr/local/src/source3.tar.gz
    - source: salt://scripts/compile_and_install.sh
    - user: root
    - group: root
    - shell: /bin/bash
    
por 18.07.2013 / 00:27
1

As versões recentes de sal eliminaram grande parte dessa dor com a Ordenação automática de estado ativada por padrão. link

Dito isto, sua solução é a melhor de declarar explicitamente o requisito.

    
por 23.10.2013 / 21:35

Tags