Skip to content

Instantly share code, notes, and snippets.

@osazemeu
Forked from igorescobar/rails_db_migrate.sh
Created April 3, 2017 11:58
Show Gist options
  • Save osazemeu/86c38797b5db925edabdd2d69f86421b to your computer and use it in GitHub Desktop.
Save osazemeu/86c38797b5db925edabdd2d69f86421b to your computer and use it in GitHub Desktop.
The correct way to run rails db migration on AWS Beanstalk (Docker Container Environment)
#!/bin/bash
# .ebextensions/scripts/db_migrate.sh
. /opt/elasticbeanstalk/hooks/common.sh
EB_SUPPORT_FILES=$(/opt/elasticbeanstalk/bin/get-config container -k support_files_dir)
EB_CONFIG_DOCKER_ENV_ARGS=()
while read -r ENV_VAR; do
EB_CONFIG_DOCKER_ENV_ARGS+=(--env "$ENV_VAR")
done < <($EB_SUPPORT_FILES/generate_env)
echo "Running migrations for aws_beanstalk/staging-app"
docker run --rm "${EB_CONFIG_DOCKER_ENV_ARGS[@]}" -t aws_beanstalk/staging-app bundle exec rake db:migrate || echo "The Migrations failed to run."
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment