Chapter 7 Deployment as Code Flashcards
How to define CodePipeline workflow steps? In other words, what tools allow you to define the steps?
Visual editor via AWS Management Console or through JSON with CLI/SDK
Can you change the name of a pipeline?
No, you must create a new one.
What does the term ‘source revision’ refer to?
Change in source code triggers pipeline execution. The version of code in this scenario is the ‘source revision’.
Name the types of ‘source revision’ sources for CodePipeline.
Git repositories and versioned S3 Buckets.
What happens when an action fails in a CodePipeline?
The revision does not pass to the next stage.
What is only stage which can contain source actions?
The first stage
Every action in a stage must have…
a unique name.
Approval actions in a CodePipeline expire in ____ days.
7
Explain the ‘invoke’ action in CodePipeline
Lambda integration. Can be used for a wide variety of things like:
- backing up data volumes, DBs, buckets
- interact w/ 3rd party APIs
- update IAM roles
- Stage swap in Elastic Beanstalk (blue/green deployment)
Explain the S3 artifact bucket used in CodePipeline
The input and output artifacts of each stage from from and are sent to an S3 artifact bucket. Refer to picture from chapter.
Transitions
Point in pipeline where execution moves from one stage to the next. If a transition is disabled and multiple revision arrive at the transition, only the last one (most recent) will be allowed to proceed when the transition is re-enabled.
Maximum artifact size for CodePipeline
256MB
Available providers for deployment stage in CodePipeline
- ECS
- CloudFormation
- CodeDeploy
- Elastic Beanstalk
- OpWorks Stacks
Maximum size for Elastic Beanstalk deployment
512MB
Can CodePipeline deploy across different accounts?
Yes, but if sourcing from S3, the bucket must pertain to pipeline account
Example uses of repository triggers
- Start external build
- notify administrators of code push
- perform unit tests
In the case of sensitive values for build jobs, what is alternative to setting environment variables?
AWS Systems Manager Parameter Store. Using environment variables will result in plaintext appearing in CLI/Console/SDK
buildspec.yml
provides the build specifications for projects in AWS CodeBuild
phases of CodeBuild
- install
- pre_build
- build`
- post_build
- artifacts (where to place artifacts)