ergopad / ergopad-api

backend
MIT License
1 stars 2 forks source link

CI/CD #280

Open vikingphoenix opened 2 years ago

vikingphoenix commented 2 years ago

For the purposes of the Eropad Crew, Continuous Integration is simply the services/tools used to automate the DevOps pipeline. Whereas, Continuous Deployment is the process of providing application features and fixes to the User. CI/CD may vary slightly, and for the Academics, here is a short history of CI/CD.

This topic includes: Unit, Penetration and Stress testing.

The workflow is modeled after DevOps, and is basically what the ErgoPad team currently does, and this document will formalize those steps and extend current process to full CI/CD automation.

Continuous Integration

Services/Tools

Workflow

Testing/User Acceptance

Continuous Deployment

Continuous Deployment extends CI by including daily builds, PR generating a production push that directly effect the user.

Services/Tools

Workflow

Backups/Rollbacks

The database is the only persistent storage in the pipeline, and can be the most tricky to backup depending on code changes.

Database(s)

Codebase

vikingphoenix commented 2 years ago

Notes

vikingphoenix commented 2 years ago

Items that should shake out of this Epic include (incomplete list):