
Learn infrastructure as code to automate, standardize, and scale cloud deployments with version-controlled code. Explore how Azure Bicep, Terraform, AWS CloudFormation, Google Cloud Deployment Manager enable reproducible resources across environments.
Learn how Azure Bicep replaces JSON ARM templates with a domain specific language to simplify infrastructure as code, enable easier maintenance, and support all resource providers.
Compare arm templates with bicep files by watching a live transpile, as three lines of bicep produce 26 lines of json, highlighting bicep's simplicity for parameters, variables, and components.
Install Azure CLI across platforms using the MSI installer for Windows. Install Bicep and verify it with bicep version, rerunning the command if errors occur.
Install Visual Studio Code and launch the editor to install the extension that enables working with bicep files, choosing your operating system and following default settings.
Install the Bicep extension in Visual Studio Code, then leverage IntelliSense, code completion, and validation to edit and refactor Bicep files efficiently.
Create your first Azure bicep resource by defining a storage accounts resource in a .bicep file, using a symbolic name and mandatory properties like name and location (central us).
Compile a bicep file to generate an arm template and verify it by inspecting storage.json, then decompile the arm template back into storage.bicep, confirming a correct round-trip.
Log in to Azure, create a resource group, and deploy a bicep file directly. Preview changes with what-if, address naming, deploy, and verify the storage account in the portal.
Add additional properties to an Azure resource with Bicep, using common and unique properties, then update a storage account to hot access level and SSL traffic only.
Discover how implicit dependencies in Azure Bicep order deployments across resources like storage accounts and blob containers, using existing references and the parent property.
Declare explicit dependencies with dependsOn as an array to reference multiple resources. Evaluate necessity, since implicit dependencies often render this optional and may slow deployment by limiting parallelism.
Visualize dependencies between resources in a bicep file using the VS Code extension, open the graphical dependencies panel, and quickly navigate to code by double-clicking a resource.
Learn to declare parameters and variables in a bicep file to configure a form recognizer resource in Microsoft Cognitive Services, using environment-specific values, default values, and type checks.
Explore bool, int, object, and array data types for flexible parameterization in Azure Bicep. Include dynamic throttling, tags, and environment configurations with objects and arrays for reusable deployments.
Explore how decorators constrain parameter values in Azure Bicep, including secure, description, and metadata decorators, and demonstrate min length, max length, min value, max value, and allowed values with examples.
Create a parameters file to deploy a bicep template by using a params.json template, rename parameters like name and location, and verify parameter population with the what-if command.
Define variables with the var keyword to store reusable expressions, infer types from assigned values, and use interpolated strings and tolower to ensure lowercase resource names.
Learn to use variables in Bicep by replacing property values with variables, define a string parameter with allowed values, and create subnet settings for flexible environment deployments.
Explore how bicep factory functions manipulate data and transform values, then master the any function to resolve type warnings in a practical Visual Studio Code example.
Master Azure Bicep date functions, including UTC now, date time at, and date time to epic, with examples of adding years or hours and Unix time conversions.
Explore Azure bicep deployment functions, returning deployment operation details and environment information. Create Deployment.bicep to capture a json-like object for local or resource-group deployments and reveal the Azure environment used.
Master Azure Bicep file functions, including load file as base64, load json content, and load text content, with examples like test dot txt and rules dot json.
Explore bicep's logical functions to convert values to booleans, producing a bool type. Learn how strings, zero, and nonzero numbers determine true or false in practical examples.
Explore the int, max, and min functions in bicep to convert strings to integers and determine the largest or smallest values from arrays or comma-separated lists with a numeric.bicep example.
Explore object functions in Azure Bicep, including contains, empty, intersection, items, json, length, and union, and learn how they operate on arrays, objects, and strings using practical examples.
Master Azure Bicep resource functions, including the get secret function to retrieve key vault secrets and list keys. Explore list secret and zones function in resources dot Bicep.
Explore scope functions in bicep to set deployment scope across management groups, resource groups, subscriptions, and tenants, retrieve properties, and reuse group information for resource creation.
Explore string functions in Bicep, including base64 encoding/decoding, data URI and URI operations, string modifications, search, and joining or splitting, plus unique identifiers like Git, unique string, and Nugget.
Learn to use access operators in bicep, including index, function, nested resource, and property access. Explore practical examples with arrays, objects, and get secret usage.
Explore how to use comparison operators in Bicep, including >=, >, <=, <, ==, and !=, with examples using integers, strings, booleans, arrays, and objects.
Master logical operators, including and, or, not, coalesce, and conditional expressions, with examples of null handling and non-null values to guide boolean results.
Master Azure Bicep numeric operators by exploring multiply, divide, modulo, addition, subtraction, and negation, and see how these operations compute values in Bicep files.
Master conditionals and loops in Azure Bicep by using the if keyword to deploy resources when conditions are met, with parameters such as deploy zone and new or existing.
Explore loops in Azure Bicep to create multiple copies of resources with unique names, using integer index and range functions, plus array-based for loops.
Explore dictionary object loops in Azure Bicep, converting dictionaries to arrays with items function to access name, and apply conditional deployments to create resources from parent and child arrays.
Explore Azure Bicep modules to organize and reuse resources, turning large templates into smaller, manageable units. Build a first module with parameters and an app.bicep that outputs created resources.
Learn how to define and use outputs in Azure Bicep to expose deployed resource information, including strings, numbers, booleans, arrays, objects, and module outputs.
Welcome to "Mastering Azure Bicep" led by Hector Perez, a Microsoft MVP and seasoned software developer with over a decade of experience. Azure Bicep, Microsoft's robust language for defining and deploying infrastructure as code (IaC) to Azure, empowers you to efficiently create, manage, and maintain your infrastructure with ease and consistency. This course guides you from the fundamentals of Azure Bicep, including its introduction and resource creation, to advanced topics like parameters, variables, functions, operators, conditions, loops, modules, and outputs.
Throughout the course, you will acquire the essential skills needed to perform resource deployments in Azure. Engage with numerous code demos designed to familiarize you with Bicep and which are available for download. By the end of this course, you will have mastered Azure Bicep, enabling you to effectively create and manage your Azure infrastructure.
Key topics covered in this comprehensive course include Introduction to Azure Bicep, Creating Resources with Azure Bicep, Parameters and Variables, Bicep Functions, Operators, Conditions and Loops, Modules, and Outputs, among others. To maximize your learning experience, a basic understanding of Azure and infrastructure concepts is recommended.
Don't miss this opportunity to become an expert in Azure infrastructure management with Azure Bicep. Join Hector Perez on this exciting learning journey today!