DevOps is a journey not a destination. Our goal when writing this challenged based hack is to introduce you to GitHub and some common DevOps practices. We also understand that your choice of programming language and DevOps processes might differ from the ones we will be using in this hack, that is OK. Our intent was to select some of the most common programming languages and highlight industry best practices, with an emphasis on showing how GitHub can help you on your DevOps journey, so that you can apply this in your environment with the languages and tools that you use.
This DevOps with GitHub hack will help you learn:
- How to use GitHub to manage source control
- How to use GitHub for Cloud based Development Environments
- How to use GitHub for Project Management
- How to use GitHub Actions for CI & CD
- How to use GitHub for Advanced Security (Code Scanning & Dependabot)
- Monitoring apps with Application Insights
- Challenge 00: Setup Azure & Tools
- Get your environment set up to hack
- Challenge 01: Setup Your Repository
- Establish version control by putting your code into a GitHub repository
- Challenge 02: Setup a Codespace
- Create a cloud based development environment with all of the prerequisite tools
- Challenge 03: Track Your Work with GitHub Project Boards
- How to track your projects/work leveraging GitHub Project Boards
- Challenge 04: First GitHub Actions Workflow
- Write a simple GitHub Actions Workflow
- Challenge 05: Infrastructure as Code
- Infrastructure as Code Automation with GitHub Actions
- Challenge 06: Continuous Integration
- Continuous Integration with GitHub Actions
- Challenge 07: Build and Push Docker Image to Container Registry
- Build and push Docker images to container registry(ACR)
- Challenge 08: Continuous Delivery
- Deploying your application to Azure with Continuous Delivery
- Challenge 09: Branching & Policies
- Protecting and creating processes for your repository with branching and branch policies
- Challenge 10: Security
- Incorporating security into your projects leveraging native GitHub features
- Challenge 11: Monitoring: Application Insights
- Monitoring your applications leveraging Application Insights
- Your own Azure subscription with owner access. See considerations below for additional guidance.
- Visual Studio Code
- Git SCM
- Kevin M. Gates
- Will Fox
- Andy Huang
- Julia Nathan
- Colin Beales