21
SUMMIT Berlin

SUMMIT - Amazon Web Services Mark… · @ric__Harvey

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: SUMMIT - Amazon Web Services Mark… · @ric__Harvey

S U M M I TB e r l i n

Page 2: SUMMIT - Amazon Web Services Mark… · @ric__Harvey

© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T

CI/CD pipelines for ECS

S e s s i o n I D

Ric HarveyTechnical Developer EvangelistAmazon Web Services

[email protected]@ric__Harveyhttps://gitlab.com/ric_harvey/bl_docker_to_production_ecs

Page 3: SUMMIT - Amazon Web Services Mark… · @ric__Harvey

S U M M I T © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.

Page 4: SUMMIT - Amazon Web Services Mark… · @ric__Harvey

© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T

Continuous integration processes

Builds, integration tests, UI testing, and more

Page 5: SUMMIT - Amazon Web Services Mark… · @ric__Harvey

© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T

Continuous integration steps

1. Developers regularly check in code to a shared, central repository

2. Automated checks run regularly against the shared code base

3. Developers get feedback from the automated checks about their code

Developer

Shared codebaseAutomated checks

Check in code

Get feedback

Run checks

Page 6: SUMMIT - Amazon Web Services Mark… · @ric__Harvey

© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T

1. Developers regularly check in code to a shared, central repository

2. Automated checks run regularly against the shared code base

3. Developers get feedback from the automated checks about their code

Developer

Shared codebaseAutomated checks

Check in code

Get feedback

Run checks

Continuous integration steps

Page 7: SUMMIT - Amazon Web Services Mark… · @ric__Harvey

© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T

1. Developers regularly check in code to a shared, central repository

2. Automated checks run regularly against the shared code base

3. Developers get feedback from the automated checks about their code

Developer

Shared codebaseAutomated checks

Check in code

Get feedback

Run checks

Continuous integration steps

Page 8: SUMMIT - Amazon Web Services Mark… · @ric__Harvey

© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T

1. Developers regularly check in code to a shared, central repository

2. Automated checks run regularly against the shared code base

3. Developers get feedback from the automated checks about their code

Developer

Shared codebaseAutomated checks

Check in code

Get feedback

Run checks

Continuous integration steps

Page 9: SUMMIT - Amazon Web Services Mark… · @ric__Harvey

© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T

AWS CI/CD Tools

AWS CodeBuild + Third Party

AWS CodeCommit AWS CodeBuild AWS CodeDeploy AWS X-Ray

Source Build Test Deploy Monitor

AWS CodePipeline

Page 10: SUMMIT - Amazon Web Services Mark… · @ric__Harvey

© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T

Continuous integration tools

Developer

Shared codebaseAutomated checks

Check in code

Get feedback

Run checks

Source Code• AWS CodeCommit• GitHub• GitHub Enterprise• Bitbucket• Amazon S3

Page 11: SUMMIT - Amazon Web Services Mark… · @ric__Harvey

© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T

Continuous integration tools

Developer

Shared codebaseAutomated checks

Check in code

Get feedback

Run checks

Build & Test• AWS CodeBuild• Jenkins w/ CodeBuild

Page 12: SUMMIT - Amazon Web Services Mark… · @ric__Harvey

© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T

Continuous integration tools

Developer

Shared codebaseAutomated checks

Check in code

Get feedback

Run checks

AWS Glue• Amazon CloudWatch Events• AWS Lambda

• Slack integration• SNS (Email / Texts)• Any AWS service

Page 13: SUMMIT - Amazon Web Services Mark… · @ric__Harvey

© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T

1.Automate the boring stuffLibrary upgrades or automatic tagging

2.Communicate statusEmail, Slack, build badges

3.Build fasterCaching, parallel builds

4.Check moreUnit and Integration tests

Continuous Integration

Page 14: SUMMIT - Amazon Web Services Mark… · @ric__Harvey

S U M M I T © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.

“Continuous Integration produces and validates artifacts, while Continuous Deployment deploys them.”

Page 15: SUMMIT - Amazon Web Services Mark… · @ric__Harvey

© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T

What is continuous delivery?

Source Build Pre-Test Deploy Post-

Test

Page 16: SUMMIT - Amazon Web Services Mark… · @ric__Harvey

© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T

Basic continuous delivery best practices

• Versioned source• Automated build• Automated deployments• Deploy to > one instance• Unit tests• Integration tests• Continuous delivery• Operations dashboard

Source

Build

Deploy to integration stack

Integration tests

Deploy to production

Page 17: SUMMIT - Amazon Web Services Mark… · @ric__Harvey

S U M M I T © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.

Page 18: SUMMIT - Amazon Web Services Mark… · @ric__Harvey

S U M M I T © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.

Page 19: SUMMIT - Amazon Web Services Mark… · @ric__Harvey

© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T

Use CodePipeline approvals to trigger tests

Source

MyAppSourceCodeCommit

Deploy

DeployToSegmentCodeDeploy

ValidateSegmentApproval

putApprovalResult

Approval message

DeployToSegmentCodeDeploy

SNS Topic

Page 20: SUMMIT - Amazon Web Services Mark… · @ric__Harvey

© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T

Use SNS to start an automated approval check

Page 21: SUMMIT - Amazon Web Services Mark… · @ric__Harvey

S U M M I T © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.

Ric HarveyTechnical Developer EvangelistAmazon Web Services

[email protected]@ric__Harveyhttps://gitlab.com/ric_harvey/bl_docker_to_production_ecs