CICD Flashcards
What 2 ways can you authenticate in Git using CodeCommit?
- SSH keys: AWS users can configure ssh keys in the IAM console
- HTTPS: Done through the AWS CLI Authentication Helper or Generating HTTPS credentials.
How do you Authorize users to interact with your code in Git using CodeCommit?
- IAM Policies manage users/roles rights to repos.
How are CodeCommit repos encrypted?
- Encrypted at REST using KMS
- Encrypted in transit using SSH or HTTPS
How do you provide Cross Account access to your CodeCommit repos?
Use IAM role in your AWS account and use AWS STS with AssumedRole API.
What 3 services does CodeCommit integrate with for notifications?
- SNS
- Lambda
- CloudWatch Event Rules
What type of events would you use SNS/Lambda notification integration for in CodeCommit?
Branch events or action in the master branch
What type of events would you use Cloudwatch Event Rules notification integration for in CodeCommit?
PR or commit comments
What is Code Pipeline?
It is an orchestration tool to visualize your workflow from source, build, test and deployment
What is a CodePipeline Artifact?
It is a file that is passed from one stage in the workflow to the next, stored in S3.
What happens when CodePipeline state changes?
A Cloudwatch Event is triggered, which can create SNS notifications.
What happens if CodePipeline fails a stage?
The pipeline stops and more information is available in the console.
What could be the cause of CodePipeline being unable to perform an action?
The IAM Service Role assigned to the Pipeline does not have the correct permissions.
How do you define build instructions for CodeBuild?
In a file called buildspec.yml at the root of the code
How do you define secret variables in the buildspec.yml file?
Use SSM Parameter Store
What are the 4 phases covered in the buildspec.yml file?
- Install
- PreBuild
- Build
- Post Build