Назад | Перейти на главную страницу

Как запустить ./configure из другой папки?

Я пишу доступную книгу, которая должна скомпилировать из исходного кода какой-то инструмент и установить его.

Проверяя свой playbook, я пробовал вручную запускать соответствующие команды, чтобы проверить их вывод.

Итак, в моей игровой книге я настроил это:

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

Но перед запуском playbook я запустил вручную: . /tmp/kafkacat/configure --enable-json что должно быть эквивалентно запуску ./configure в текущем каталоге, но команда не работает, и я получаю сообщение об ошибке.

Так как же это сделать? заранее спасибо

Нет, я не думаю, что они эквивалентны. Точка без пробела заменяет путь к текущему каталог, тогда как точка перед пробелом заставляет команды скрипта запускаться в текущем оболочка. Здесь есть хорошее объяснение: https://askubuntu.com/q/232932

Во многих случаях, в зависимости от программного обеспечения, настройка зависит от включения и заголовков, открытых из текущего рабочего каталога.

ansible поддерживает аргумент "chdir". Может быть, это решение, которое подойдет вам?