У меня есть файл состояния состояния (подход 1):
export_port:
cmd.run:
- name: export PORT=53000
- cwd: /tmp
execute_cmd:
cmd.run:
- name: ./test.sh db host user log
- cwd: /tmp
Когда задание выполняется, файл состояния возвращает ошибку, сообщающую, что программа psql не установлена.
Я пробовал солт-файл с помощью скрипта оболочки, в котором есть все команды экспорта и оболочки, описанные выше (подход 2):
script:
cmd.script:
- name: /tmp/test.sh
- source: /source/dir/test.sh
- cwd: /tmp
И скрипт оболочки:
#! /bin/sh
export PORT=53000
./test.sh db host user log
Оба подхода предназначены для одной и той же задачи: экспортировать значение и выполнить команду.Второй подход работает нормально, как и ожидалось.Я не уверен, почему первый подход не удался.Есть мысли?