# CICD

* This section is all about automating application code deployment to AWS virtual servers using AWS CICD solutions.

## Services

| Service Name       | Description                                                                                  |
| ------------------ | -------------------------------------------------------------------------------------------- |
| `AWS CodeCommit`   | To store application code just like `GitHub`, `GitLab` or `BitBucket`                        |
| `AWS CodeBuild`    | Building and testing code like Jenkins CI                                                    |
| `AWS CodeDeploy`   | Deploying the code to EC2 instance *(not Beanstalk)*                                         |
| `AWS CodePipeline` | Orchestrate automating code deployment to Elastic Beanstalk, ECS, Fargate using above tools. |
| `AWS CodeStar`     | Manage software development in one place                                                     |
| `AWS CodeArtifact` | Store, publish and share software artifacts and packages like `Artifactory`                  |
| `AWS CodeGuru`     | Automated code reviews using Machine Learning                                                |

## References

* [Atlassian's basics of CICD](https://www.atlassian.com/continuous-delivery)
* [Redhat's basics of Devops](https://www.redhat.com/en/topics/devops)
