Applying style to the Components
Course Content
0 / 121 completedWho is the course for and prerequisites
Introduction
What will you learn in this course
Non-functional requirements
Functional requirements
Section recap
Welcome
Discovering the Short Url length
Designing the high-level architecture
Assigning technologies to the architecture
Introduction (2)
Setting up GitHub environments
Creating and setting up the GitHub repository
Creating the API Project
Section recap (2)
Creating GitHub Actions for API
Introduction (3)
What is Infrastructure as Code and Bicep
Writing Bicep scripts for URL shortener infrastructure
Deploying API with GitHub Actions
Deploying infrastructure to multiple environments
Section recap (3)
Introduction (4)
Deploying infrastructure to Azure with GitHub Actions
Deploying Azure Key Vault using Bicep
Introduction (5)
Section recap (4)
Integrating with Key Vault
Feature Design
Adding input validation
Handling requests to create a Short URL
Elevate GH Actions privileges to write permissions
Deploying CosmosDB resources with Bicep
Creating an API endpoint to create Short URLs
Generating a short URL
Storing URLs in CosmosDB
Increment token and avoid duplication
Introduction (6)
Section recap (5)
Demo
Creating the Token Range API infrastructure
Feature Design (2)
Setting up PostgreSQL for token management
Creating the Token Range API GitHub Action Workflow
Deploying the database schema
Handling token range requests
Demo (2)
Adding a retry policy with Polly
Creating an hosted service for range retrieval
Introduction (7)
Section recap (6)
Using Microsoft Entra ID for authentication
Deploying Entra ID resources using Bicep
Configuring Entra ID application for the API
Giving permissions to GitHub Action deploy EntraID Application
Adding JWT authentication with Entra ID in API
Section recap (7)
Accessing user identity in the API
Introduction (8)
Deploying the Redirect API using Bicep
Setting up Azure Redis Cache
Creating the Redirect API GitHub Action Workflow
Demo (3)
Section recap (8)
Using Redis Cache for better performance
Implementing URL redirection logic
Introduction (9)
Addressing data challenges
Setting up Azure Function for data processing using Bicep
Implementing CosmosDB Trigger Azure Function
Creating GitHub Action for Azure Function
Section recap (9)
Demo (4)
Introduction (10)
What is React.js
Adding a List endpoint to the API
Add pagination using Continuation Tokens
Creating the React Project
Deploying Azure Static Web App using Bicep
Configuring the Web Application in Microsoft Entra ID
Enable CORS on Api
Creating GitHub Action for Static Web App
Applying style to the Components
Building a form to create a short URLs
Integrating MSAL.js for Entra ID authentication
Listing URLs in the UI
Section recap (10)
Let's practice
Introduction (11)
Solution
What is a Health Check
Configuring Health Checks using Bicep
Section recap (11)
Implementing a HealthCheck
Applying Health Checks across all services
Introduction (12)
What is OpenTelemetry
Collecting Request Metrics
Adding OpenTelemetry to services
Configuring Application Insights and Log Analytics workspace with Bicep
Section recap (12)
Demo (5)
Introduction (13)
What is Azure FrontDoor
Configuring the Health Probe
Adding a Rate Limit Rule with WAF to Front Door
105. 16.3
Section recap (13)
Setting up a custom domain with Front Door
Demo (6)
Introduction (14)
Setting up a Virtual Network
Allowing FrontDoor requests
Implementing access restrictions for CosmosDB
Adding services to the Virtual Network
Implementing access restrictions for Redis
Implementing access restrictions for PostgreSQL
Section recap (14)
Allowing GitHub Action deployments to App Services
Conclusion
Implementing access restrictions for KeyVault