1

Ansible を使用して、変数と変数の両方/etc/bash.bashrcを追加します。$HOME/.bashrc

Ansible が終了すると、2 つのファイルは次のようになります。

/etc/bash.bashrc

...
export VAR1="some text comes here"
...

$HOME/.bashrc

...
export VAR2="other text comes here"
...

したがって、Ansible はその役割を完璧に果たします。

Ansible の終了後に実行される Vagrantfile のシェル スクリプト:

$init = <<-SCRIPT
whoami
echo $HOME
cat /etc/bash.bashrc
cat $HOME/.bashrc
source /etc/bash.bashrc
source $HOME/.bashrc
echo "VAR1 :: $VAR1"
echo "VAR2 :: $VAR2"
SCRIPT

config.vm.provision :init, type: :shell, inline: $init, privileged: false

2 つの変数が 2 つのファイルに設定されており、両方のファイルが供給されている場合でも、出力は次のようになります。

vagrant
/home/vagrant
---> /etc/bash.bashrc contains the export
---> $HOME/.bashrc contains the export as well
VAR1 ::
VAR2 ::

ご覧のとおり、2 つの変数は設定されておらず、空の文字列を提供しています。

で試してみました$HOME/.profileが、同じ結果でした。

どのように進めればよいか分かりますか?

4

1 に答える 1