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:
- 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 00: Prerequisites - Ready, Set, GO!
- Gather the necessary resources and create the repository to store the project
- Challenge 01: Configure Your Development Environment
- Setup your development environment in the cloud
- Challenge 02: Add A Feature To The Existing Application
- Leverage GitHub Copilot to help you add features to your application
- Challenge 03: Setup Continuous Integration And Ensure Security
- Setup continuous integration and integrate GitHub Advanced Security into your pipeline
- Challenge 04: Create A Deployment Environment
- Use CaC/IaC to provision your cloud environment
- Challenge 05: Setup Continuous Deployment
- Deploy your application to Azure with Continuous Delivery
- Your own Azure subscription with owner access. See considerations below for additional guidance.
- A GitHub Enterprise account if using internal repositories, or a standard GitHub account if using public repositories.
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.