-
Notifications
You must be signed in to change notification settings - Fork 0
CICD
The entire process is usually just writing a shell script to run in the cloud.
-
GitHub Actions: Cloud-based service for running automated workflows triggered by certain events such as pushing code to a GitHub code repository.
-
Continuous Integration (CI): An automated process that detects changes in a codebase and runs various checks and balances against the code to make sure that it still functions.:
- building the code
- running linters
- automated tests
-
Continuous Deployment (CD): A technique where frequent automated deployments of the code to a production (or testing) environment take place.
Designed to test integrated code being merged from multiple developers.
Builds on a CI pipeline, adding the extra steps to deploy the code.
- Manual deployment is:
- slow
- risks mistakes
thus automating this, reduces time and risks.
-
Feedback will be received faster from customers due to the constant automated deployment to customers.
-
Important work can be focused on when deployment is managed automatically.
-
An audit trail is left behind when automated deployments take place.
One key thing to note is that due to microservices being so complex and scalable, it is almost a necessity to then automate the deployments.
- GitHub Actions
- BitBucket
- GitLab
- TravisCI
- CircleCI
A flow of work or a sequence of tasks that are performed one after the other.
Also known as a Pipeline, can be configured through YAML
files that run a series of jobs, that each run steps. You can also simply call up a local shell
script to avoid the YAML
syntax.
A workflow can be triggered through an event:
- push
- merge request (pull request)
A workflow that has been invoked, is picked up by:
- a runner
- a container
- a virtual machine