|
| 1 | +--- |
| 2 | +title: Continuous integration and deployment with GitHub Actions overview |
| 3 | +description: See how GitHub Actions is a great platform for .NET DevOps |
| 4 | +author: colindembovsky |
| 5 | +ms.date: 03/04/2021 |
| 6 | +--- |
| 7 | +# Continuous integration and deployment with GitHub Actions |
| 8 | + |
| 9 | +GitHub has long been the home for millions of open-source developers around the globe. Most developers associate source control with GitHub. However, GitHub is an evolving platform that can be used for more than just synchronizing Git repositories. |
| 10 | + |
| 11 | +## GitHub Actions |
| 12 | + |
| 13 | +GitHub Actions is a workflow engine that can automate workflows for nearly all events that occur on GitHub. Actions is a great solution for Continuous Integration/Continuous Deployment (CI/CD) pipelines. |
| 14 | + |
| 15 | +In this section of articles, you'll learn how to create an Actions workflow. The workflow will build, test, and deploy a .NET web app to Azure Web Apps. |
| 16 | + |
| 17 | +> [!NOTE] |
| 18 | +> Before you begin, complete the **Publish the app's code to GitHub** and **Disconnect local Git deployment** sections of the [Continuous integration and deployment with Azure DevOps](cicd.md) section to publish your code to GitHub. Then proceed to the [Build](actions-build.md) article. |
| 19 | +
|
| 20 | +In the [Build](actions-build.md) article, you'll create the initial workflow to build and test the .NET app. You'll: |
| 21 | + |
| 22 | +> [!div class="checklist"] |
| 23 | +
|
| 24 | +> * Learn the basic structure of a GitHub Action workflow YAML file. |
| 25 | +> * Use a template to create a basic build workflow that builds a .NET app and executes unit tests. |
| 26 | +> * Publish the compiled app so that it's ready for deployment. |
| 27 | +
|
| 28 | +In the [Deploy](actions-build.md) article, you'll: |
| 29 | + |
| 30 | +> [!div class="checklist"] |
| 31 | +
|
| 32 | +> * Learn about environments in GitHub Actions. |
| 33 | +> * Create two environments and specify environment protection rules. |
| 34 | +> * Create environment secrets for managing environment-specific configuration. |
| 35 | +> * Extend the workflow YAML file to add deployment steps. |
| 36 | +> * Add a manual dispatch trigger. |
| 37 | +
|
| 38 | +## Secure code with CodeQL |
| 39 | + |
| 40 | +In addition to building and deploying code, [GitHub Advanced Security](https://docs.github.com/github/getting-started-with-github/about-github-advanced-security) offers tools for "shifting left" with security. That is, integrating security early on in the software delivery lifecycle. [CodeQL](https://codeql.github.com/docs/codeql-overview/about-codeql/) is a code scanning language that runs queries to find potential vulnerabilities or quality issues in your code. CodeQL is run using an Actions workflow. |
| 41 | + |
| 42 | +In the [CodeQL](actions-codeql.md) article, you'll: |
| 43 | + |
| 44 | +> [!div class="checklist"] |
| 45 | +
|
| 46 | +> * Create a Code Scanning Action. |
| 47 | +> * Edit the workflow file to include custom scan settings. |
| 48 | +> * See scanning results. |
| 49 | +
|
| 50 | +## Compare and contrast GitHub Actions and Azure Pipelines |
| 51 | + |
| 52 | +GitHub Actions and Azure Pipelines have a common lineage and are similar in many respects. However, you should understand the differences before selecting a platform for building, testing, and deploying apps. In the [Comparison](actions-vs-pipelines.md) article, you'll deep dive into these platforms and compare and contrast them. You'll also learn how to select the correct platform for your CI/CD needs. |
0 commit comments