提问者:小点点

AWS弹性豆茎:特定环境的. eb扩展


我有两个环境在AWS弹性豆茎开发生产

我希望. eb扩展/app.config只能在生产环境中运行。有什么方法可以做到这一点?

app. config:

container_commands:
  01-command:
    command: "crontab .ebextensions/cronjob"
    leader_only: true

共2个答案

匿名用户

根据TNICHOLS的想法,我找到了一个解决方案:

将环境PARAM1变量值更改为MyAppEnv-生产(或您想要的)。

app. config:

container_commands:
  command-01:
    command: "/bin/bash .ebextensions/crontab.sh"
    leader_only: true

crontab.sh:

if [ "$PARAM1" == "MyAppEnv-Production" ]; then
  crontab -l > /tmp/cronjob

  #CRONJOB RULES
  echo "00 00 * * * /usr/bin/wget http://localhost/cronexecute > /dev/null 2>&1" >> /tmp/cronjob

  crontab /tmp/cronjob
  rm /tmp/cronjob
  echo 'Script successful executed, crontab updated.'
else
  echo 'This script is only executed in the production environment.'
fi

匿名用户

我不认为有一个简单的方法可以按照你的想法来做。你可以让配置文件运行并执行第二个脚本(也许cron.sh)。在cron.sh你可以检查环境名称,然后相应地添加cronjob。还没有测试过,但我认为这应该可行。