如何在 Bash 脚本中检查 Elastic Beanstalk 环境变量
How to check Elastic Beanstalk environment variable in Bash script
我正在尝试从 bash 脚本(在 .platform/hooks/postdeploy/
.
中访问 Elastic Beanstalk 环境变量
脚本是这样的:
if [[ -v "${WORKER_ENV}" ]]; then
echo -e "Happy times - worker env\n"
# Do stuff I want to do
else
echo -e "No worker env variable"
fi
我有同一个应用程序的 2 个实例。在1中,我在Configuration > Environment properties
中指定了WORKER_ENV
。另一个我没有。
当我在两个环境中部署应用程序时,日志文件显示“没有工作环境变量”。如何让脚本从 Configuration > Environment properties
?
中获取环境变量
对于遇到此问题的任何其他人,我的解决方法如下:
WORKER = 0
SUBSTRING="WORKER_ENV"
while read line; do
if [[ "$line" == *"$SUBSTRING"* ]]; then
WORKER=1
echo "Found WORKER_ENV"
fi
done < /opt/elasticbeanstalk/deployment/custom_env_var
if [[ $WORKER == 1 ]]; then
echo -e "Happy times - worker env\n"
在另一个脚本中,我已经将 env
文件复制到 custom_env_var
,因为之前在 cron 作业中部署应用程序后,我无法访问 env
文件。这现在工作正常
我正在尝试从 bash 脚本(在 .platform/hooks/postdeploy/
.
脚本是这样的:
if [[ -v "${WORKER_ENV}" ]]; then
echo -e "Happy times - worker env\n"
# Do stuff I want to do
else
echo -e "No worker env variable"
fi
我有同一个应用程序的 2 个实例。在1中,我在Configuration > Environment properties
中指定了WORKER_ENV
。另一个我没有。
当我在两个环境中部署应用程序时,日志文件显示“没有工作环境变量”。如何让脚本从 Configuration > Environment properties
?
对于遇到此问题的任何其他人,我的解决方法如下:
WORKER = 0
SUBSTRING="WORKER_ENV"
while read line; do
if [[ "$line" == *"$SUBSTRING"* ]]; then
WORKER=1
echo "Found WORKER_ENV"
fi
done < /opt/elasticbeanstalk/deployment/custom_env_var
if [[ $WORKER == 1 ]]; then
echo -e "Happy times - worker env\n"
在另一个脚本中,我已经将 env
文件复制到 custom_env_var
,因为之前在 cron 作业中部署应用程序后,我无法访问 env
文件。这现在工作正常