パッカーでMavenとGradleを使用してAMIをベイク処理しようとしています。以下は私のjsonファイルです。パーカーイメージのbashスクリプトでenv変数を設定する方法
#!/bin/bash
sudo yum -y update
sudo yum install -y httpd
sudo mkdir -p /usr/local/apache-maven
cd /usr/local/apache-maven
sudo wget http://mirror.olnevhost.net/pub/apache/maven/binaries/apache-maven-3.2.2-bin.tar.gz
sudo tar xvf apache-maven-3.2.2-bin.tar.gz
echo "Maven is installed at usr local apache-maven #maven"
sudo mkdir /opt/gradle
cd /opt/gradle
sudo wget https://services.gradle.org/distributions/gradle-3.4.1-bin.zip
sudo unzip -d /opt/gradle gradle-3.4.1-bin.zip
echo "Gradle is installed at opt gradle #gradle"
cat > set-vars1.sh
export M2_HOME=/usr/local/apache-maven/apache-maven-3.2.2
export M2=$M2_HOME/bin
export PATH=$M2:$PATH
export PATH=$PATH:/opt/gradle/gradle-3.4.1/bin
eval $(./set-vars1.sh)
私はスクリプトを終了できず、変数をエクスポートできません。スクリプトを終了して実行するにはどうすればよいですか?
私がしようとしているのは、上記のスクリプトをプロビジョナとして書いているパッカーでAMIインスタンスを作成することです。私はmavenとgradleをダウンロードして解凍できますが、env変数はエクスポートされません。
基本的に、実行時にインスタンス内に変数を設定する必要があります。
スクリプトの最後の行は、親シェルの環境を変更することはありません。この[link](https://askubuntu.com/questions/58814/how-do-i-add-environment-variables)では、環境変数の変更方法について説明しています。 –