Increasing developer velocity and implementing proper DevOps procedures is a focus of most organizations in today's world. GitHub offers a suite of tools for developers to streamline code creation, automate tasks, and ensure code security. In this challenge-based hack you'll explore how to implement processes
As part of a give-back campaign, your organization is supporting a local pet shelter by updating, deploying and managing a web application for listing pets available for adoption.
This DevOps with GitHub hack will help you learn how to use:
- manage source control with GitHub
- contribute code without installing resources locally with GitHub Codespaces
- gain the support of an AI pair programmer with GitHub Copilot
- automate deployment with GitHub Actions
- ensure code security with GitHub Advanced Security
- Challenge 0 - Setup and introduction
- Challenge 1 - Configure your development environment
- Challenge 2 - Add a feature to the existing application
- Challenge 3 - Setup continuous integration and ensure security
- Challenge 4 - Create a deployment environment
- Challenge 5 - Setup continuous deployment
- Your own Azure subscription with owner access. See considerations below for additional guidance.
- A GitHub Enterprise account
../Student
- Student Challenge Guides
../Student/Resources
- Student's resource files, code, and templates to aid with challenges
If you are running this hack with a group, here are some options for providing access to Azure:
- Each person/team uses their own subscription (ideal)
- Use a single subscription with each person/team using a different resource group
- Use a single subscription and resource group, with each person/team creating resources within the single resource group (less ideal)
Regardless of the option you choose, you'll have to consider:
- Azure default quotas and resource limits (for example, # of VMs allowed per region or subscription)
- Unique naming of resources - many services may require a globally unique name, for example, App service, container registry.