CI / CD - Staging implementation
Continuous Integration and Continuous Deployment to (at first) a Staging Environment.
- Setup develop / master branch (develop for CI / CD to Staging, master for production)
- Setup VPS for runner and deploy
- Write & Test runner script
- Add DNS entry for staging-blog.hive.io
Envisioned breakdown of how this runner works:
- Builds image on CD VPS based on latest commit
- Pushes images to "unlisted" registry (S3) - anyone can pull an image from here.
- Kill previous image on CD VPS
- Run image on CD VPS (staging-blog.hive.io)
- Nginx / letsencrypt reverseproxy to the condensor port(s) of the latest build
- If fails somehow, revert to previous committed image? (point 3)