无法使用Ruby代码库将git aws.push推送到弹性Beanstalk

6

我已经按照不同的教程完成了所有步骤。

通过 +eb init+,我成功创建了 Elastic Beanstalk 实例,并正确设置了路径。

然后我进行了 git .init 并尝试进行 git aws.push 但是出现了以下错误:

error: cannot run .git/AWSDevTools/aws.elasticbeanstalk.push: No such file or directory
fatal: While expanding alias 'aws.elasticbeanstalk.push':       
.git/AWSDevTools/aws.elasticbeanstalk.push': No such file or directory

现在,我开始从另一个git仓库克隆了这个项目,然后进行了

eb stop 

关闭实例,然后执行了一个

rm -rf .git 

清空当前工作目录,以清除上一个克隆中可能遗留的任何项目。然后我执行了:
eb init 

再次执行此步骤,以重新生成所有 .git 信息。
我甚至按照 http://docs.amazonwebservices.com/elasticbeanstalk/latest/dg/create_deploy_Ruby_rails.html 中的步骤进行操作,并执行了:
git init && git add -A && git commit -m "Initial commit"

然后有一次我尝试去做以下操作:
git aws.push 

我看到了和之前一样的错误提示信息。

虽然这是我的第一个 Beanstalk 实例,但我不确定我哪里做错了。您只能在下载 CLI 的目录中运行 git 命令吗?

更新:我找到了另一个链接,建议执行以下步骤:

sh /home/elasticbeanstalk-cli/AWSDevTools/Linux/AWSDevTools-RepositorySetup.sh

但是这只是给我返回了以下信息:

sh /home/coder/eb/AWSDevTools/Linux/AWSDevTools-RepositorySetup.sh 
/home/coder/eb/AWSDevTools/Linux/AWSDevTools-RepositorySetup.sh: 18:      
/home/coder/eb/AWSDevTools/Linux/AWSDevTools-RepositorySetup.sh: Bad substitution

操作系统:Linux(Ubuntu / LTS 12.04)


2
我在亚马逊论坛上得到了一份回复,解决了这个问题:我们刚刚发现一个问题,如果使用非bash实现的“sh”调用安装程序,则安装程序无法正常工作--您可能会遇到相同的问题。 解决方案是在调用初始化存储库的shell脚本时将sh替换为bash$ bash path/to/AWS-ElasticBeanstalk-CLI-2.3/AWSDevTools/Linux/AWSDevTools-RepositorySetup.sh - pquery
没错。RepositorySetup.sh的当前版本有一些bashisms。根据我与他们的沟通,下一个版本将在1月中旬/晚些时候发布。一个解决方法是显式地调用bash。 - aldrinleal
2个回答

2

错误提示说文件不存在,但实际上是因为未安装 Ruby 导致的。如果你使用的是 Linux(Ubuntu),请使用以下命令进行安装:

sudo apt-get install ruby

这对我有用。


0

我有同样的问题。但是我是Python开发人员,而elasticbeanstalk-cli是由Ruby开发的。我只需在我的系统中安装Ruby,所有问题都得到解决。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接