AZ-400T00 Designing and Implementing Microsoft DevOps Solutions
1. What is DevOps?
– Explore the DevOps journey
– Identify transformation teams
– Explore shared goals and define timelines
2. Plan Agile with GitHub Projects and Azure Boards
– Link GitHub to Azure Boards
– Configure GitHub Projects
– Manage work with GitHub Project boards
– Customize Project views
– Collaborate using team discussions
– Agile Plan and Portfolio Management with Azure Boards
3. Manage Git branches and workflows
– Explore branch workflow types
– Explore feature branch workflow
– Explore Git branch model for continuous delivery
– Explore GitHub flow
– Explore fork workflow
– Version Control with Git in Azure Repos
4. Collaborate with pull requests in Azure Repos
– Collaborate with pull requests
– Examine GitHub mobile for pull request approvals
5. Explore Git hooks
– Implement Git hooks
6. Plan foster inner source
– Explore foster inner source
– Implement the fork workflow
– Describe inner source with forks
7. Manage Git repositories
– Work with large repositories
– Purge repository data
– Manage releases with GitHub Repos
– Automate release notes with GitHub
8. Identify technical debt
– Examine code quality
– Examine complexity and quality metrics
– Measure and manage technical debt
– Integrate other code quality tools
– Plan effective code reviews
9. Explore Azure Pipelines
– Explore the concept of pipelines in DevOps
– Describe Azure Pipelines
– Understand Azure Pipelines key terms
10. Manage Azure Pipeline agents and pools
– Choose between Microsoft-hosted versus self-hosted agents
– Explore job types
– Explore predefined agent pool
– Understand typical situations for agent pools
– Communicate with Azure Pipelines
– Communicate to deploy to target servers
– Examine other considerations
– Describe security of agent pools
– Configure agent pools and understand pipeline styles
11. Describe pipelines and concurrency
– Understand parallel jobs
– Estimate parallel jobs
– Describe Azure Pipelines and open-source projects
– Explore Azure Pipelines and Visual Designer
– Describe Azure Pipelines and YAML
– Enable Continuous Integration with Azure Pipelines
12. Implement a pipeline strategy
– Configure agent demands
– Implement multi-agent builds
– Explore source control types supported by Azure Pipelines
13. Integrate with Azure Pipelines
– Describe the anatomy of a pipeline
– Understand the pipeline structure
– Detail templates
– Explore YAML resources
– Use multiple repositories in your pipeline
14. Introduction to GitHub Actions
– What are actions?
– Explore Actions flow
– Understand Workflows
– Describe standard workflow syntax elements
– Explore Events
– Explore Jobs
– Explore Runners
– Examine release and test an action
15. Learn continuous integration with GitHub Actions
– Describe continuous integration with actions
– Examine environment variables
– Share artifacts between jobs
– Examine Workflow badges
– Describe best practices for creating actions
– Mark releases with Git tags
– Create encrypted secrets
– Use secrets in a workflow
– Implement GitHub Actions for CI/CD
16. Design a container build strategy
– Examine structure of containers
– Work with Docker containers
– Understand Dockerfile core concepts
– Examine multi-stage dockerfiles
– Examine considerations for multiple stage builds
– Explore Azure container-related services
– Deploy Docker containers to Azure App Service web apps
17. Create a release pipeline
– Describe Azure DevOps release pipeline capabilities
– Explore release pipelines
– Explore artifact sources
– Choose the appropriate artifact source
– Examine considerations for deployment to stages
– Explore build and release tasks
– Explore custom build and release tasks
– Explore release jobs
– Configure Pipelines as Code with YAML
– Explore release recommendations
– Understand the delivery cadence and three types of triggers
– Explore release approvals
– Explore release gates
– Use release gates to protect quality
– Explore GitOps release strategy and recommendations
– Control Deployments using Release Gates
18. Provision and test environments
– Provision and configure target environments
– Configure automated integration and functional test automation
– Understand Shift-left
– Set up and run availability tests
– Explore Azure Load Testing
– Set up and run functional tests
19. Manage and modularize tasks and templates
– Examine task groups
– Explore variables in release pipelines
20. Automate inspection of health
– Automate inspection of health
– Explore events and notifications
– Explore service hooks
– Configure Azure DevOps notifications
– Configure GitHub notifications
– Explore how to measure quality of your release process
– Examine release notes and documentation
– Examine considerations for choosing release management tools
– Explore common release management tools
21. Introduction to deployment patterns
– Explore microservices architecture
– Examine classical deployment patterns
– Understand modern deployment patterns
22. Implement blue-green deployment and feature toggles
– What is blue-green deployment?
– Explore deployment slots
– Describe feature toggle maintenance
23. Implement canary releases and dark launching
– Explore canary releases
– Examine traffic manager
– Understand dark launching
24. Implement A/B testing and progressive exposure deployment
– What is A/B testing?
– Explore CI-CD with deployment rings
25. Integrate with identity management systems
– Integrate GitHub with single sign-on (SSO)
– Explore service principals
– Explore Managed Identity
26. Manage application configuration data
– Rethink application configuration data
– Explore separation of concerns
– Understand external configuration store patterns
– Examine Key-value pairs
– Examine App configuration feature management
– Integrate Azure Key Vault with Azure Pipelines
– Manage secrets, tokens and certificates
– Examine DevOps inner and outer loop
– Integrate Azure Key Vault with Azure DevOps
– Enable Dynamic Configuration and Feature Flags
27. Explore infrastructure as code and configuration management
– Explore environment deployment
– Examine environment configuration
– Understand imperative versus declarative configuration
– Understand idempotent configuration
28. Create Azure resources using Azure Resource Manager templates
– Why use Azure Resource Manager templates?
– Explore template components
– Manage dependencies
– Modularize templates
– Manage secrets in templates
29. Create Azure resources by using Azure CLI
– What is Azure CLI?
– Work with Azure CLI
30. Explore Azure Automation with DevOps
– Create automation accounts
– What is a runbook?
– Understand automation shared resources
– Explore runbook gallery
– Examine webhooks
– Explore source control integration
– Explore PowerShell workflows
– Create a workflow
– Explore hybrid management
– Examine checkpoint and parallel processing
31. Implement Desired State Configuration (DSC)
– Understand configuration drift
– Explore Desired State Configuration (DSC)
– Explore Azure Automation State configuration (DSC)
– Examine DSC configuration file
– Implement DSC and Linux Automation on Azure
32. Implement Bicep
– What is Bicep?
– Install Bicep
– Understand Bicep file structure and syntax
– Deployments using Azure Bicep templates
33. Introduction to Secure DevOps
– Describe SQL injection attack
– Understand DevSecOps
– Explore Secure DevOps Pipeline
– Explore key validation points
– Explore continuous security validation
– Understand threat modeling
– Explore CodeQL in GitHub
34. Implement open-source software
– Explore how software is built
– What is open-source software?
– Explore corporate concerns with open-source software components
– Explore common open-source licenses
– Examine license implications and ratings
35.Software Composition Analysis
– Inspect and validate code bases for compliance
– Explore software composition analysis (SCA)
– Implement GitHub Dependabot alerts and security updates
– Integrate software composition analysis checks into pipelines
– Examine tools for assess package security and license rate
– Automate container scanning, including container images
– Interpret alerts from scanner tools
36. Security Monitoring and Governance
– Implement pipeline security
– Explore Microsoft Defender for Cloud
– Examine Microsoft Defender for Cloud usage scenarios
– Explore Azure Policy
– Understand policies
– Explore initiatives
– Explore resource locks
– Understand Microsoft Defender for Identity
– Integrate GitHub Advanced Security with Microsoft Defender for Cloud
– Configure GitHub Advanced Security for GitHub and Azure DevOps
37. Explore package dependencies
– What is dependency management?
– Describe elements of a dependency management strategy
– Identify dependencies
– Understand source and package componentization
– Decompose your system
– Scan your codebase for dependencies
38. Understand package management
– Explore packages
– Understand package feeds
– Explore package feed managers
– Explore common public package sources
– Explore self-hosted and SaaS based package sources
– Consume packages
– Publish packages
– Package management with Azure Artifacts
39. Migrate consolidate and secure artifacts
– Identify existing artifact repositories
– Migrate and integrating artifact repositories
– Secure access to package feeds
– Examine roles
– Examine permissions
– Examine authentication
40. Implement a versioning strategy
– Understand versioning of artifacts
– Explore semantic versioning
– Examine release views
– Promote packages
– Explore best practices for versioning
41. Introduction to GitHub Packages
– Publish packages
– Install a package
– Delete and restore a package
– Explore package access control and visibility
42. Implement tools to track usage and flow
– Understand the inner loop
– Explore Azure Monitor and Log Analytics
– Examine Kusto Query Language (KQL)
– Explore Application Insights
– Implement Application Insights
– Monitor application performance with Application Insights
43. Develop monitor and status dashboards
– Configure monitoring in GitHub
– Explore Azure Dashboards
– Explore Azure Monitor workbooks
– Explore Power BI
– Build your own custom application
– Monitor pipeline health, including failure rate, duration, and flaky tests
– Optimize a pipeline for cost, time, performance, and reliability
– Optimize pipeline concurrency for performance and cost
44. Share knowledge within teams
– Share acquired knowledge within development teams
– Integrate with Azure Boards
– Share team knowledge using Azure Project Wiki
45. Design processes to automate application analytics
– Explore rapid responses and augmented search
– Integrate telemetry
– Examine monitoring tools and technologies
– Explore IT Service Management Connector
46. Manage alerts, blameless retrospectives and a just culture
– Examine when to get a notification
– Explore how to fix it
– Explore smart detection notifications
– Improve performance
– Understand server response time degradation
– Reduce meaningless and non-actionable alerts
– Examine blameless retrospective
– Develop a just culture