Udemy
    •  
    •  
    •  
    •  
    •  
    •  
    •  
    •  
Turn what you know into an opportunity and reach millions around the world.
Learn More
Your cart is empty.
Keep shopping
AWS CloudFormation Step by Step: Intermediate to Advanced
Highest Rated
Rating: 4.8 out of 5(96 ratings)
1,601 students

AWS CloudFormation Step by Step: Intermediate to Advanced

Learn advanced AWS CloudFormation and Infrastructure as Code techniques with simple, practical examples.
Last updated 6/2026
English

What you'll learn

  • Connect stacks using exports and cross-stack references
  • Create and manage nested stacks for modular CloudFormation templates
  • Automate EC2 configuration with UserData and CloudFormation helper scripts (cfn-init, cfn-signal, cfn-hup)
  • Control resource lifecycles using UpdatePolicy, DeletionPolicy, and UpdateReplacePolicy
  • Apply stack policies to protect resources during updates
  • Extend CloudFormation with Lambda-backed custom resources and wait conditions
  • Detect and resolve stack drifts, and import unmanaged resources back into stacks
  • Deploy and manage serverless applications using the AWS Serverless Application Model (SAM)
  • Strengthen your Infrastructure as Code skills relevant to the AWS Certified DevOps Engineer – Professional exam

Course content

8 sections59 lectures7h 8m total length
  • Course Introduction2:37
  • AWS Region Used in the Course0:10

    Learn which AWS region you should use while doing the examples.

  • Exporting Stack Outputs7:10

    In this lecture, you will learn the topics below:

    • Why to use cross-stack references and how to export outputs of a stack to make them usable by others.

    • How to use the intrinsic Fn::Join function to concatenate multiple list items as a single string using a delimiter.

  • Importing Outputs Exported by Another Stack9:25

    In this lecture, you will learn the topics below:

    • How to reference an output exported by another stack using the intrinsic Fn::ImportValue function.

    • How to divide a string into multiple item using a delimiter with the intrinsic Fn::Split function.

    • Viewing exports and stacks importing them on AWS CloudFormation Console.

  • Updating Referenced Stacks8:23

    In this lecture, you will learn the topics below:

    • Updating referenced stack resources.

    • Understanding what happens when you try to update the value of an exported output which is used by another stack.

    • Using the intrinsic Fn::GetAZs and Fn::Select functions to select an availability zone from your stack's region dynamically during creation.

  • Deleting Referenced Stacks3:46

    In this lecture, you will learn the topics below:

    • Understanding what happens when you try to delete a stack that has exports used by another stack.

    • Viewing the stacks importing an export using AWS CloudFormation Console and AWS CLI.

  • Protecting a Stack From Deletion3:48

    In this lecture, you will learn the topics below:

    • Enabling or disabling termination protection on a stack to prevent it from accidental deletion.

    • Deleting referenced and referencing stacks in order.

  • Creating Nested Stacks From a Root Stack13:58

    In this lecture, you will learn the topics below:

    • Defining nested stack resources in a root template.

    • Passing outputs of one nested stack to another in a root template.

    • Creating nested stacks using AWS CloudFormation Console.

  • Updating Nested Stacks8:24

    In this lecture, you will learn how to update your nested stacks through your root stacks using AWS Management Console.

  • Deleting Nested Stacks4:14

    In this lecture, you will learn how to delete your nested stacks through your root stacks with a hands-on example.

  • Using Local Paths and Packaging Nested Stacks With AWS CLI9:03

    In this lecture, you will learn the topics below:

    • Using local paths for nested stack templates instead of S3 URLs in the root template.

    • Packaging nested templates using 'aws cloudformation package' command of AWS CLI.

    • Deploying packaged root template with 'aws cloudformation deploy' command of AWS CLI.

  • Updating Nested Stacks via Bash Scripts6:40

    In this lecture, you will learn the topics below:

    • Using bash scripts to create and update nested stacks.

    • How updates are performed when only one of the nested stacks is updated.

  • Enabling Termination Protection on Nested Stacks4:11

    In this lecture, you will learn how termination protection works on nested stacks.

Requirements

  • Basic understanding of AWS CloudFormation templates and parameters
  • Familiarity with the AWS Management Console and AWS CLI
  • An active AWS account to follow along with examples
  • Comfort using a terminal application to run CloudFormation commands

Description

A clear, hands-on path to advanced AWS CloudFormation — from cross-stack design to automation with helper scripts, policies, and SAM.


AWS CloudFormation is the foundation of Infrastructure as Code (IaC) on AWS — the service that defines, provisions, and manages resources in a reliable and automated way. This course continues from AWS CloudFormation Step by Step – Beginner to Intermediate and focuses on advanced CloudFormation techniques that experienced AWS engineers use in real-world environments.


You’ll explore how to design modular and reusable architectures with cross-stack references and nested stacks, automate configurations using helper scripts such as cfn-init, cfn-signal, and cfn-hup, and control resource lifecycles with policy attributes and stack policies. The course also covers extending CloudFormation with Lambda-backed custom resources, coordinating deployments with wait conditions, detecting and resolving drift, and importing existing resources back into management. Finally, you’ll integrate serverless applications using the AWS Serverless Application Model (SAM) to expand your Infrastructure as Code skills.


Each lesson is concise, practical, and designed to help you apply advanced CloudFormation features confidently — without unnecessary complexity. By completing this course, you’ll enhance your Infrastructure as Code expertise and gain practical experience relevant to real DevOps projects and the AWS Certified DevOps Engineer – Professional certification.


If you’ve already completed AWS CloudFormation Step by Step – Beginner to Intermediate or feel comfortable with CloudFormation fundamentals, this course is your natural next step toward advanced Infrastructure as Code proficiency.


Start learning today and bring structure, automation, and confidence to your AWS environments.

Who this course is for:

  • Cloud engineers, DevOps professionals, and developers with foundational CloudFormation experience
  • AWS users who completed AWS CloudFormation Step by Step – Beginner to Intermediate or have equivalent knowledge
  • Professionals aiming to automate or standardize AWS environments using Infrastructure as Code
  • Learners preparing for the AWS Certified DevOps Engineer – Professional exam who want deeper hands-on practice with CloudFormation