Странное поведение при записи текста в файл с помощью Packer Shell Provisioner - PullRequest
0 голосов
/ 25 мая 2020

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

{
  "type": "shell",
   "scripts": [
      "scripts/test.sh"
   ]
}

По необъяснимым причинам не все строки записываются.

#!/bin/bash
set -euo pipefail
IFS=$'\n\t'

sudo touch /etc/test.txt
echo "[Test]" | sudo tee -a /etc/test.txt
echo "some data for the file" | sudo tee -a /etc/test.txt
echo "test=1" | sudo tee -a /etc/test.txt

sudo tee -a /etc/test.txt << 'EOF'
# configures JAVA
JAVA_HOME=/usr/lib/jvm/java-8-oracle
export JAVA_HOME
EOF

После сборки упаковщика в файле находятся следующие строки.

[Test]
some data for the file

Кажется, проблема возникает, когда в тексте присутствует знак "=". Вы знаете такое поведение?

Когда я использую это

sudo bash -c 'echo "test=1" >> /etc/test.txt' 

текст записывается в файл.

...