Ruby on rails AWS弹性Beanstalk部署后脚本
我正在尝试向Elastic Beanstalk添加部署后脚本。我已经读了一些博客文章(阅读参考资料),其中提到将配置文件添加到Ruby on rails AWS弹性Beanstalk部署后脚本,ruby-on-rails,amazon-web-services,amazon-ec2,amazon-elastic-beanstalk,Ruby On Rails,Amazon Web Services,Amazon Ec2,Amazon Elastic Beanstalk,我正在尝试向Elastic Beanstalk添加部署后脚本。我已经读了一些博客文章(阅读参考资料),其中提到将配置文件添加到.elasticbeanstalk目录。配置文件应该创建一个shell脚本并将其复制到目录: /opt/elasticbeanstalk/hooks/appdeploy/post 在我的.elasticbeanstalk文件夹中,我有以下文件: config.yml branch-defaults: staging: environme
.elasticbeanstalk
目录。配置文件应该创建一个shell脚本并将其复制到目录:
/opt/elasticbeanstalk/hooks/appdeploy/post
在我的.elasticbeanstalk
文件夹中,我有以下文件:
config.yml
branch-defaults:
staging:
environment: env-name
global:
application_name: app-name
default_ec2_keyname: aws-eb
default_platform: 64bit Amazon Linux 2015.03 v1.3.1 running Ruby 2.2 (Passenger Standalone)
default_region: us-west-2
profile: eb-cli
sc: git
test.config(我为测试部署后脚本的工作方式而添加的配置):
但是,在我运行eb deploy
之后,shell脚本不会被复制到上面的目录中。我的/opt/elasticbeanstalk/appdeploy/post
目录为空。.elasticbeanstalk
文件夹在/var/app/current/
目录中是正确的。我在日志文件中也看不到任何引用新脚本或错误的内容。我已经检查了eb tools.log
,eb activity.log
,cron
,并在所有日志中搜索这些文件的关键字。不过,运气不好
提前感谢您的帮助/建议
参考资料:
.ebextensions
目录,而不是。elasticbeanstalk
。然后,您应该在/opt/elasticbeanstalk/hooks/appdeploy/post目录中看到您的shell脚本
如论坛帖子所述
“将文件直接放入hooks目录是有风险的,因为这不是有文档记录的方法,在某些容器中是不同的,将来可能会改变”Ah,doh!愚蠢的错误。谢谢
files:
"/opt/elasticbeanstalk/hooks/appdeploy/post/01_test.sh":
mode: "000755"
owner: root
group: root
content: |
#!/usr/bin/env bash
# This is my test shell script