Файл ответов для шеф-повара устанавливает Opsworks

У меня есть установка для Linux, которая требует несколько ответов, кроме да и нет. Один из них - это каталог (который имеет значение по умолчанию) и принимаемый для EULA, остальные - да и нет ответов.

У меня есть сценарий в рецепте, который запускает bash, и я дохожу до определенного момента, и он зависает, поиск ввода - мое предположение.

Важная часть

echo "/opt/mydir"  # directory location
echo "yes" \n      # confirm directory location
sleep 10           # added a pause while it did its thing. Needed?    
echo "yes" \n      # another question asked
sleep 10           #another pause
echo "accept" \n   # EULA agreement, requires accept or decline
echo "y" \n        # another question asked
sleep 10           # another pause
echo "y" \n        #another question asked
sleep 10           # another pause before the next command is sent that runs another stage of the install. 

Согласно лог-файлу, он зависает от соглашения EULA, что заставляет меня поверить, что оно ожидает принятия. Если я запускаю его вручную, он будет запрашивать принятие или отклонение при каждом вводе, если не увидит принятие или отклонение.

Так что я могу сделать по-другому, чтобы сделать эту работу? Я искал несколько дней в поисках ответа и не нашел ни одного, поскольку это не простой сценарий да или нет.

1 ответ

Я наконец наткнулся на это от коллеги. Даже проще, чем я думал.

script 'Install Software' do
interpreter "bash"
cwd "/opt/fidir"
code <<-EOH
cp /home/user/installs/fidir/Install/oskey.lic /opt/fidir/insttemp/oskey.lic
/opt/fidir/fast psx <<-EOFFIDIR02
y
n
AEC
02
n
/var/fidir
1
n
EOFFIDIR02
EOH

конец

Другие вопросы по тегам