Migrate from Heroku to AWS in about a day.




Step 1: Connect your Git repo
Gruntwork will scan the repo, walk you through a list of migration steps, and open a pull request for each step, so you can customize everything as much as you want!



workflows:
test-build-push-deploy:
jobs:
- run_tests
- build_docker_image:
requires:
- run_tests
- push_docker_image:
requires:
- build_docker_image
- deploy_docker_image_to_staging:
requires:
- push_docker_image_to_ecr
filters:
branches:
only: staging
- deploy_docker_image_to_production:
requires:
- push_docker_image_to_ecr
filters:
branches:
only: main
Step 2: Configure CI / CD
Gruntwork will configure a CI / CD pipeline for AWS that will give you the "git push to deploy" workflow you’re used to with Heroku. You can choose to use CircleCi, GitLab, GitHub Actions, or Jenkins as the CI server to run this pipeline.






Step 3: Instrument your app
Gruntwork will update your app with cloud-native best practices for packaging, monitoring, logging, service discovery, secrets management, schema migrations, and more.



Step 4: Deploy to AWS
Deploy your app onto a battle-tested AWS architecture based on ECS, EKS, EC2, or Fargate. Pick from a variety of "add-ons" such as RDS (PostgreSQL, MySQL, etc), ElastiCache (Redis, Memcached), and Elasticsearch. All the infrastructure is managed as code using Terraform, Docker, and Packer, so you can customize everything!




Step 5: You're live!
At this point, your app is up and running in AWS and you can deploy updates any time with "git push."
Meet the Gruntwork community.











