Como executar ./configure de uma pasta diferente?

1

Estou escrevendo um playbook ansible que deve compilar a partir da fonte algumas ferramentas e instalá-lo.

Ao verificar meu playbook, tentei executar os comandos relevantes manualmente para verificar sua saída.

Então, no meu ansible play book eu configurei isso:

- name: Configure kafkacat
      command: . {{ install_dest }}/configure arg1
        args:
          enable_json: "--enable-json"
      sudo: yes

Mas antes de executar o manual, eu corri manualmente: . /tmp/kafkacat/configure --enable-json , que deveria ser equivalente a executar ./configure no diretório atual, mas o comando falha e eu recebo um erro.

Então, como isso pode ser feito? Agradecemos antecipadamente

    
por Itai Ganot 24.04.2016 / 18:58

2 respostas

0

Em muitos casos, dependendo do software, a configuração depende da inclusão de cabeçalhos abertos no diretório de trabalho atual.

ansible suporta um argumento "chdir". Talvez seja essa a solução que funcionará para você?

    
por 24.04.2016 / 20:45
0

Não, não acho que sejam equivalentes. O ponto sem o seguinte espaço substitui o caminho para o seu atual diretório , enquanto um ponto que precede um espaço faz com que os comandos de um script sejam executados em seu shell atual. Há uma boa explicação aqui: link

    
por 24.04.2016 / 21:14