Multi-Cloud Deployments with GitHub Actions

A presentation at Conf42: Cloud Native 2023 in March 2023 in by Rob Earlam

Slide 1

Slide 1

Multi-Cloud Deployments with GitHub Actions Rob Earlam March 2023 © 2023 Sitecore Corporation A/S. All rights reserved.

Slide 2

Slide 2

Rob Earlam Senior Developer Advocate, Sitecore 🌍Developer advocate 💻software developer 📽️movie lover 🎶music listener 🍕pizza eater 🍖meat smoker living in @RobEarlam @rob@robearlam.com RobEarlam https://robearlam.com/ © 2023 Sitecore Corporation A/S.

Slide 3

Slide 3

Project Background © 2023 Sitecore Corporation A/S. Photo by Pedro Lastra on Unsplash

Slide 4

Slide 4

Existing setup • Monolith 1 – Azure WebApps • SUGCON Events • SUGCON ANZ • Monolith 2 – AKS • MVP Site – including application • SUGCON EU © 2023 Sitecore Corporation A/S.

Slide 5

Slide 5

Target setup • One set of infrastructure powered by XM Cloud o All SUGCON sites o All MVP functionality • Migration complete to our target “longterm architecture” © 2023 Sitecore Corporation A/S.

Slide 6

Slide 6

Deployment flow © 2023 Sitecore Corporation A/S. Photo by Chris Dickens on Unsplash

Slide 7

Slide 7

High-level architecture SSR MVP site SSG SUGCON ANZ SSG XM Cloud SUGCON EU SSG SUGCON Events SSG: Static Site Generation SSR: Server-Side Rendering © 2023 Sitecore Corporation A/S.

Slide 8

Slide 8

CI/CD configuration • Built using GitHub actions • Started with single pipeline — too inefficient! • Split pipeline out by target system • • • • CI-CD_XM_Cloud.yml CI-CD_MVP.yml CI-CD_SUGCON_EU.yml CI-CD_SUGCON_ANZ.yml • Reusable workflows for common actions © 2023 Sitecore Corporation A/S.

Slide 9

Slide 9

Conclusions • GitHub Actions is super flexible! • Code reuse in your templates matters! • Checkout our repository to see it in action • https://github.com/Sitecore/XM-Cloud-Introduction © 2023 Sitecore Corporation A/S. 9

Slide 10

Slide 10

Thank you @RobEarlam @rob@robearlam.com RobEarlam https://robearlam.com/ FOR DISCUSSION PURPOSES ONLY. © 2023 Sitecore Corporation A/S. All Rights Reserved. Sitecore, the Sitecore logo and Own The Experience are trademarks of Sitecore Corporation A/S and its affiliates. Other names and brands may be claimed as the trademarks of others.