问题描述
我想根据我是在开发环境还是生产环境中使用 option_settings
创建 .config 文件。到目前为止,我已经尝试使用 condition
,但似乎它们在 option_settings 中是不允许的。
我想使用 commands
来运行一个脚本,将配置文件复制到 .ebextensions
文件夹中。这是有问题的脚本:
#!/bin/bash
ENV_VAR = /opt/elasticbeanstalk/bin/get-config environment -k CURRENT_ENV
if [ "$ENV_VAR" == "prod" ]; then
cp "../config/prod_config.yml" "../.ebextensions/prod_config.config";
echo "prod"
else
cp "../config/dev_config.yml" "../.ebextensions/dev_config.config";
echo "dev"
fi
我无法看到回声,并且 ec2 实例保持默认状态。不确定这是因为我没有正确管理文件还是因为这个选项不可行。有没有人有建议或知道这种方法是否可行?
解决方法
ENV_VAR
设置错误。您有一个 space
并且没有正确执行命令。应该是:
ENV_VAR=$(/opt/elasticbeanstalk/bin/get-config environment -k CURRENT_ENV)
,
我发现的最佳解决方案是在管道构建期间运行脚本。