我有一个在Github中托管的PHPproject,我试图使用AWS Codepipeline和ElasticBeanstalk设置持续集成。
到目前为止,我能够从github获取存储库内容并将其部署到ElasticBeanstalk。但是我需要在部署之前运行一个 shell 脚本,该脚本将更新 config.json 文件并更新环境变量。
这就是我试图在管道中完成的:
- 从 Github 获取项目文件(已完成(
- 运行将更新项目中的 config.json 文件的 shell 脚本
- 运行一个 shell 脚本,该脚本将在 ElasticBeanstalk 中设置环境变量
- 部署到 ElasticBeanstalk (已完成(
关于我如何让它工作的任何想法?
谢谢
CodePipeline 不支持在操作中运行 shell,但您可能希望使用 CodeBuild,它可以执行 shell 命令来构建或仅更新文件。
http://docs.aws.amazon.com/codebuild/latest/userguide/sample-elastic-beanstalk.html#sample-elastic-beanstalk-codepipeline
要在 ElasticBeanstalk 中设置环境变量,您可以在源文件夹中放置一个配置文件 (.ebextensions/environmentvariables.config(。
http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/environment-configuration-methods-after.html#configuration-options-after-console-ebextensions