Dev Tools Flashcards
What is Amplify?
Helps developers quickly build full stack apps (mobile & web apps) by providing tools, libraries and services
Name 3 features of Amplify?
- Framework flexibility
- Figma integration for design
- AWS Device Farm for testing
What does CI/CD stand for?
Continuous Integration / Continuous Delivery which helps developers build, test & deploy their changes
What is Cloud9?
Cloud9 is a web-based IDA for coding and debugging
It consists of 2 main components:
1. The development environment (EC2-based (aws manages instance) or SSH-based (you manage instance)) and the IDE itself
Its best used for serverless development (AWS Lambda) and it is free
What is Cloud Shell?
Cloud Shell is a browser-based Linux shell within the AWS Management Console that offers secure access to AWS CLIs and tools
- It is pre-configured with the user’s AWS credentials so don’t need dev setup
- Includes AWS CLI and CLIs for services like Elastic Beanstalk, ECS and Serverless Application Model (SAM)
- Includes access to command-line tools like Python or Node.js
- Provides up to 1GB of persistant storage
It simplifies the AWS Sercice interaction for developers and administrators
What is Code Commit?
Code commit is a managed git-based source control service
- starting point for CI/CD pipelines
- integrates with Build, Deploy and Pipeline
- Serverless & managed
- 3 conntection options: HTTPS, SSH, HTTPS (GRC)
- IAM for fine grained access control
- pricing based on active users
Name 2 options for enabling event-driven workflows in Code Commit?
- Send notification such as AWS Chatbot, Slack, SNS
- Use actions such as SNS /lambda or rule templates such as requiring approvals on prs etc)
What is Code Build do?
Build phase of CI/CD pipeline
It revolves around 3 core concepts (CodeBuild project, Build environment, Build File)
It also determines where you save output artifacts (ie., s3 bucket)
What is Code Deploy do?
Deploys for us
What are the 3 core concepts AWS Build revolves around?
Code (Code build project)
Build env (ie., Docker)
Build file (YAML)
The buildspec file is a critical component in CodeBuild that guides the build process.
Describe key info you need to know about build spec file..
Should be named ‘buildspec.yml’ and placed in code root directory (can override this)
Consists of 9 sections:
(RAVER BCPP)
Run-as (linux commands)
Artifacts (storage location ie., s3)
Version
Enviroment
Reports (for test results)
Batch (build instructions)
Cache (optimizes build)
Phases (commands for install, pre-build, build, post-build)
Proxy (config proxy server settings)
What does Code Pipeline do?
Wires pieces together
You fill out info for these 6 actions:
- approval
- source
- build
- test
- deploy
- invoke
It will follow all these it integrates all the steps
What is Code Star?
Code Star (*)
can pull different CI/CD pipelines together
ie., dev, test, prod
it simplifies and speed sup the dev, testing and deployment of apps
What file do you use to configure CodeDeploy
AppSpec File
What are the 3 main components of code deploy?
Application
Deployment Group
Deployment
What is the application component of Code Deploy?
Create application & select deployment platform as either EC2/on-premises, Lambda or ECS
What is the Deployment Group part of Code Deploy?
Define the deployment group which will be:
- A group of servers for EC2
- Clusters, load balancers & target groups for ECS
- Specific settings for Lambda deployments