2016-08-11 6 views
0

内のenv変数をエクスポートするための最良の方法は、私はレシピが実行された後、私はecho $VAR1シェフ

bash 'set_env_var' do 
    code <<-EOH 
     echo export VAR1="https://#{node['fqdn']}" >> /etc/profile 
     source /etc/profile 
    EOH 
    not_if "grep -q VAR1="https://#{node['fqdn']}" >> /etc/profile" 
    end 

を行うことができるようにシェフのレシピ内のenv変数を設定しようとしていますどのようなものですがあれば私に知らせてください同じことをするためのより良い方法です。

答えて

0

これはUnixがサポートする機能ではありません。あなたのディストリビューションのデフォルトのシェルRCファイルがそれをサポートしていても、現在のシェルに影響を与えない場合(新しいものを起動する必要があります)、すべての実行をカバーしていない場合は、/etc/profile.dシナリオ。環境変数は、あなたが解決しようとしているものにはおそらく間違っています。

+0

ファイルに 'VAR1'の値を追加して、ファイルから' VAR1'値を読み出すことを検討してください。 – meallhour

+0

あなたがやっていることに依存しますが、設定ファイルはより標準的です。 – coderanger