通过 deploy.sh 脚本部署项目时出错

通过 deploy.sh 脚本部署项目时出错

我需要帮助。我有在 Ruby 上部署项目的脚本。

#!/bin/sh


if [ $# -eq 0 ]; then
    echo "Usage:"
    echo "  ./deploy.sh some_stage_name"
else
    rvm use `cat .ruby-version`@`if [ -f .ruby-gemset ]; then cat .ruby-gemset; fi;` do bundle exec cap $@ deploy &&
    cd ./legacy &&
    rvm use `cat .ruby-version`@`if [ -f .ruby-gemset ]; then cat .ruby-gemset; fi;` do bundle exec cap $@ deploy &&
    cd ..
fi;

如果我通过 cap servername deploy 运行它,它就会正常工作。但如果我运行它./deploy.sh servername,就会出现错误。

The deploy has failed with an error: #<SSHKit::Runner::ExecuteError: Exception while executing on host 1.2.3.4: "\xE2" from ASCII-8BIT to UTF-8

我只在一台服务器上遇到此错误。此服务器上全局安装了 rvm。如何解决此问题。谢谢。

答案1

问题出在 exec bundle 文件中。我有评论。替换后一切正常。

相关内容