Overview

Learn how GitHub Actions enables you to automate your software development cycle. You'll learn how to plan automation of your software development life cycle with GitHub Actions workflows, use GitHub Actions to automatically build an application, and use GitHub Script to interact with the GitHub API.

Audience Profile

This course is intended for students who want to use GitHub to help developers and DevOps engineers build and deploy applications quickly. Additionally, students will discover which GitHub Actions features are available for their enterprise instance and learn how to use them.

Syllabus

Create a basic GitHub Action and use that action in a workflow.

Learning Objectives
  • Describe GitHub Actions, the types of actions, and where to find them.
  • Plan an automation of your software development lifecycle with GitHub Actions workflows.
  • Create a container action and have it run in a workflow triggered by a push event to your GitHub repository.

Learn how to create workflows to add continuous integration (CI) to your projects.

Learning Objectives
  • Learn essential features and techniques to build robust and dynamic workflows.
  • Build and test a Node.js project by using GitHub Actions and a workflow template.
  • Debug a failed test by using GitHub Actions logs.
  • Customize your workflow by using GitHub Actions.

Create two deployment workflows using GitHub Actions and Microsoft Azure.

Learning Objectives
  • Discover options for triggering a continuous delivery GitHub Workflow.
  • Understand steps to remove workflow artifacts.
  • Identify important environment protections.
  • Control workflow execution with job conditionals.
  • Deploy to Microsoft Azure with a GitHub deploy action.
  • Store credentials with GitHub Secrets.
  • Create and destroy Azure resources with GitHub Actions workflows.

Learn to interact with the GitHub API from GitHub Actions by using GitHub Script.

Learning Objectives
  • Use GitHub Script in your workflow.
  • Comment on issues by using Octokit.
  • Add issues to a project board by using Octokit.
  • Use the workflow expression syntax to filter when jobs run in a workflow.

Publish your code libraries or Docker images automatically and securely with GitHub Packages. You'll also run Docker images published into GitHub Packages locally.

Learning Objectives
  • Understand what a Package Repository is and when to use it.
  • Set up a Continuous Integration (CI) workflow with GitHub Actions to publish to GitHub Packages.
  • Validate your knowledge with an exercise that checks your ability to publish to a GitHub Packages registry.
  • Identify how to authenticate, install, and manage GitHub Packages.

Learn how to write your own GitHub actions and identify the metadata, syntax, and workflow commands to create custom workflows. Learn best practices for documenting and versioning your action, and how to publish your action to the GitHub Marketplace.

Learning Objectives
  • Identify the metadata and syntax needed to create custom GitHub actions.
  • Learn best practices to publish a private or public GitHub action.
  • Consume actions within a workflow file.
  • Create custom JavaScript based actions.
  • Publish a newly created action to the GitHub Marketplace.

Discover which GitHub Actions features are available for your enterprise instance and learn how to use them.

Learning Objectives
  • Identify the different tools you can use at enterprise and organization levels to manage your actions and workflows.
  • Evaluate what the appropriate runners are for your enterprise instance.
  • Discover the different configurations available for self-hosted runners and customize them according to your enterprise use case.
  • Understand what encrypted secrets are and how to use them in your actions and workflows.