我实际上是在ElasticBeanstalk上部署我的Laravel应用。
我想根据环境切换.env文件,但是我无法设法使测试正常工作。
这是我在.ebextensions / 02-env-file.config中编写的内容
option_settings:
aws:elasticbeanstalk:application:environment:
ENV_NAME: '`{ "Ref" : "AWSEBEnvironmentName" }`' # assign the actual env name to ENV_NAME
container_commands:
01-config-environment:
command: mv /var/app/ondeck/.env.staging /var/app/ondeck/.env
test: '[[ $ENV_NAME = "Staging" ]]'
command: mv /var/app/ondeck/.env.demo /var/app/ondeck/.env
test: '[[ $ENV_NAME = "Demo" ]]'
但是无论我的环境如何,它似乎总是运行最后一个命令。 我想我在这里想念什么,但找不到。
谢谢您的帮助。
答案 0 :(得分:0)
我终于有了我问题的答案。如果有人遇到同样的问题,我会在这里发布。
事实证明,如果我们捆绑2条命令,ElasticBeanstalk可能无法正确执行它们。
要实现我想要的功能,我需要将命令分成2个:
container_commands:
01-config-environment-staging:
command: mv .env.staging .env
test: '[[ ${ENV_NAME} = "Staging" ]]'
02-config-environment-demo:
command: mv .env.demo .env
test: '[[ ${ENV_NAME} = "Demo" ]]'