Opsworks 日志显示 bash 块 运行 成功但没有
Opsworks log shows a bash block ran successfully but it did not
我在其他食谱中包含的其中一个食谱中有这个方块。
bash 'setup' do
cwd "#{node[:'python-virtualenv'][:home]}"
user 'ubuntu'
environment "HOME" => "#{node[:'python-virtualenv'][:home]}"
code <<-EOH
sudo add-apt-repository -y ppa:fkrull/deadsnakes
sudo apt-get update
sudo apt-get -yq install python3.5
curl -s https://bootstrap.pypa.io/get-pip.py | sudo python3.5
sudo pip3.5 install virtualenv virtualenvwrapper
echo "export WORKON_HOME=#{node[:'python-virtualenv'][:home]}.virtualenvs/" > #{node[:'python-virtualenv'][:home]}.bash_profile
echo "export VIRTUALENVWRAPPER_PYTHON=$(which python3.5)" > #{node[:'python-virtualenv'][:home]}.bash_profile
echo "source /usr/local/bin/virtualenvwrapper.sh" >> #{node[:'python-virtualenv'][:home]}.bash_profile
EOH
end
日志显示此块已执行,但当我通过 ssh 进入实例时,它没有安装。
这是日志的相关部分
[2018-03-07T09:59:33+00:00] INFO: Processing bash[setup] action run (app::default line 12)
[2018-03-07T09:59:40+00:00] INFO: bash[setup] ran successfully
将 set -e
添加到 shell 脚本的顶部,您可能会看到其中一个中间命令失败。为什么您 运行 作为 non-root 用户然后尝试使用 sudo
?总的来说,这似乎是一个非常奇怪的 shell 脚本。可能还想添加 set -x
来帮助调试。
我在其他食谱中包含的其中一个食谱中有这个方块。
bash 'setup' do
cwd "#{node[:'python-virtualenv'][:home]}"
user 'ubuntu'
environment "HOME" => "#{node[:'python-virtualenv'][:home]}"
code <<-EOH
sudo add-apt-repository -y ppa:fkrull/deadsnakes
sudo apt-get update
sudo apt-get -yq install python3.5
curl -s https://bootstrap.pypa.io/get-pip.py | sudo python3.5
sudo pip3.5 install virtualenv virtualenvwrapper
echo "export WORKON_HOME=#{node[:'python-virtualenv'][:home]}.virtualenvs/" > #{node[:'python-virtualenv'][:home]}.bash_profile
echo "export VIRTUALENVWRAPPER_PYTHON=$(which python3.5)" > #{node[:'python-virtualenv'][:home]}.bash_profile
echo "source /usr/local/bin/virtualenvwrapper.sh" >> #{node[:'python-virtualenv'][:home]}.bash_profile
EOH
end
日志显示此块已执行,但当我通过 ssh 进入实例时,它没有安装。
这是日志的相关部分
[2018-03-07T09:59:33+00:00] INFO: Processing bash[setup] action run (app::default line 12)
[2018-03-07T09:59:40+00:00] INFO: bash[setup] ran successfully
将 set -e
添加到 shell 脚本的顶部,您可能会看到其中一个中间命令失败。为什么您 运行 作为 non-root 用户然后尝试使用 sudo
?总的来说,这似乎是一个非常奇怪的 shell 脚本。可能还想添加 set -x
来帮助调试。