Successfully reported this slideshow.
Your SlideShare is downloading. ×

Serverless Pipelines for Serverless Applications

Advertisement

More Related Content

Similar to Serverless Pipelines for Serverless Applications

Advertisement

More from Amazon Web Services

Advertisement

Related Audiobooks

Free with a 30 day trial from Scribd

See all

Serverless Pipelines for Serverless Applications

  1. 1. Serverless Pipelines for Serverless Applications Byron Pogson, Solutions Architect | August 2018 bpogson@amazon.com © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
  2. 2. The Application Client S3 API Gateway Lambda DynamoDB
  3. 3. How do I deploy this? Code Build Test Deploy
  4. 4. Get Started – Cookie Cutter sam init --location gh:aws-samples/cookiecutter-aws- sam-pipeline
  5. 5. How do I deploy this? Code Commit Build Test Deploy
  6. 6. How do I deploy this? Code Commit Code Build Code Build Deploy
  7. 7. How do I deploy this? Code Commit Code Build Code Build Cloud FormationDeploy
  8. 8. How do I deploy this? Code Pipeline
  9. 9. Orchestration - CodePipeline
  10. 10. Building (and Unit Testing!) It - CodeBuild version: 0.2 phases: install: commands: - npm install pre_build: commands: - chmod 0777 ./node_modules/.bin/jest # make jest executable - npm test build: commands: - echo "Starting SAM packaging `date` in `pwd`" - aws cloudformation package --template-file template.yaml --s3-bucket $BUILD_OUTPUT_BUCKET --output-template-file packaged.yaml post_build: commands: - echo "SAM packaging completed on `date`" artifacts: files: # list of local files relative to this build environment that will be added to the final artifact (zip) - packaged.yaml discard-paths: yes
  11. 11. Backend – CloudFormation & CodeDeploy DeploymentPreference: Type: Canary10Percent10Minutes Alarms: # A list of alarms that you want to monitor - !Ref AliasErrorMetricGreaterThanZeroAlarm - !Ref LatestVersionErrorMetricGreaterThanZeroAlarm Hooks: # Validation Lambda functions that are run before & after traffic shifting PreTraffic: !Ref PreTrafficLambdaFunction PostTraffic: !Ref PostTrafficLambdaFunction
  12. 12. Frontend Deploy - CodeBuild version: 0.2 phases: pre_build: commands: - cd deploy - python create-config.py $STACK_NAME build: commands: - bucket=$(python get-bucket.py $STACK_NAME) - aws s3 sync ../client s3://$bucket --delete --acl public-read
  13. 13. Demo Time
  14. 14. How do I deploy this? Code Pipeline
  15. 15. Scan QR Code for More Information
  16. 16. Thank You! Byron Pogson, Solutions Architect | August 2018 bpogson@amazon.com

×