GH-200: GitHub Actions Practice Exam
The GitHub Actions Certification (GH‑200) validates your ability to design, automate, and optimize workflows using GitHub Actions. It's designed for DevOps engineers, software developers, and IT professionals with intermediate experience. It covers workflow creation, automation, CI/CD pipelines, and enterprise-level Actions configuration. The certification is valid for two years after passing.
Knowledge Gained
After preparing for and completing the GitHub Actions Certification (GH‑200) exam, you will be able to -
- Design and maintain scalable GitHub Actions workflows for builds, tests, and deployments.
- Use triggers like push, schedule, manual, and webhooks to execute workflows.
- Secure workflows with encrypted secrets and manage variables and environment settings.
- Analyze workflow failures, access logs, debug runs, and optimize performance.
- Build, test, and maintain custom GitHub Actions, including JavaScript and container-based actions.
- Deploy reusable workflows and actions across your enterprise.
- Configure enterprise-wide policies for GitHub Actions use.
Skills Required
To be well-prepared, you should already know how to -
- Write and manage workflows (YAML syntax, jobs, steps, dependencies).
- Trigger workflows using various event types.
- Use environment variables and encrypted secrets securely.
- Inspect workflow runs and interpret logs for debugging.
- Author basic actions using JavaScript or Docker container formats.
- Manage GitHub Actions at scale in an organization (runner types, policy control, reuse. etc.).
- Microsoft Learn
- Intermediate experience with GitHub Actions, CI/CD pipelines, and YAML workflows is a must.
Value of the Certification
- Validates real-world ability to design, troubleshoot, and manage CI/CD workflows using GitHub Actions.
- Enhances credibility for roles like DevOps Engineer, Platform Engineer, and GitHub Solutions Architect.
- Backed by GitHub and Microsoft, with widespread recognition and digital badge issuance
Course Outline
The GH-200: GitHub Actions Exam covers the following topic -
Module 1: Describe Author and maintain workflows (40%)
1.1 Explain working with events that trigger workflows
- Learn to configure workflows to run for one or more events
- Learn to configure workflows to run for scheduled events
- Learn to configure workflows to run for manual events
- Learn to configure workflows to run for webhook events (e.g., check_run, check_suite, deployment, etc.)
- Learn to demonstrate a GitHub event to trigger a workflow based on a practical use case
1.2 Explain using the components of a workflow
- Learn to identify the correct syntax for workflow jobs (e.g., indentation and encapsulation of parts of the workflow)
- Learn to use job steps for actions and shell commands
- Learn to use conditional keywords for steps
- Learn to describe how actions, workflows, jobs, steps, runs, and the marketplace work together
- Learn to identify scenarios suited for using GitHub-hosted and self-hosted runners
- Learn to implement workflow commands as a run step to communicate with the runner
- Learn to demonstrate the use of dependent jobs
1.3 Explain how to use encrypted secrets and environment variables as part of a workflow
- Learn to use encrypted secrets to store sensitive information
- Learn to identify the available default environment variables during the construction of the workflow
- Learn to identify the location to set custom environment variables in a workflow
- Learn to identify when to use the GITHUB_TOKEN secret
- Learn to demonstrate how to use workflow commands to set environment variables
1.4 Explain how to create a workflow for a particular purpose
- Learn to add a script to a workflow
- Learn to demonstrate how to publish to GitHub Packages using a workflow
- Learn to demonstrate how to publish to GitHub Container Registry using a workflow
- Learn to use databases and service containers in a GitHub Actions workflow
- Learn to use labels to route workflows to specific runners
- Learn to use CodeQL as a step in a workflow
- Learn to demonstrate how to publish a component as a GitHub release using GitHub Actions
- Learn to deploy a release to a cloud provider using a GitHub Actions workflow
Module 2: Understand Consume workflows (20%)
2.1 Explain how to interpret the effects of a workflow
- Learn to identify the event that triggered a workflow from its effects in a repository, issue, or pull request
- Learn to describe a workflow’s effects from reading its configuration file
- Learn to diagnose a failed workflow run (e.g., using a workflow run history and its logs, determine why a workflow run may have failed)
- Learn to identify ways to access the workflow logs from the user interface
- Learn to identify ways to access the workflow logs from GitHub’s REST API
- Learn to enable step debug logging in a workflow
- Learn to demonstrate how to use default environment variables in a workflow
- Learn to demonstrate the correct syntax for passing custom environment variables in a workflow step
2.2 Explain how to manage workflow runs
- Learn to configure caching of workflow dependencies
- Learn to identify steps to pass data between jobs in a workflow
- Learn to remove workflow artifacts from GitHub
- Learn to add a workflow status badge
- Learn to add environment protections
- Learn to define a matrix of different job configurations
- Learn to implement workflow approval gates
2.3 Explain how locate a workflow, its logs, and artifacts
- Learn where to locate a workflow in a repository
- Learn the difference between disabling and deleting of workflows
- Learn how to download workflow artifacts from the user interface
- Learn how to use an organization’s templated workflow
Module 3: Describe about Author and maintain actions (25%)
3.1 Explain Use available action types
- Learn to identify the type of action required for a given problem (e.g., JavaScript, Docker container, run step)
- Learn to demonstrate how to troubleshoot JavaScript actions
- Learn to demonstrate how to troubleshoot Docker container actions
3.2 Explain the components of an action
- Learn to identify the files and directory structure needed to create an action
- Learn to identify the metadata and syntax needed to create an action
- Learn to implement workflow commands within an action to communicate with the runner (Note: this includes exit codes)
Module 4: Understand Manage GitHub Actions in the enterprise (15%)
4.1 Explain how to distribute actions and workflows to the enterprise
- Learn to reuse templates for actions and workflows
- Learn to define an approach for managing and leveraging reusable components (e.g., repos for storage, naming conventions for files/folders, and plans for ongoing maintenance)
- Learn to define how to distribute actions for an enterprise
- Learn to define how to control access to actions within the enterprise
- Learn to configure organizational use policies for GitHub Actions
4.2 Explain to manage runners for the enterprise
- Learn the effects of configuring IP allow lists on GitHub-hosted and self-hosted runners
- Learn how to select appropriate runners to support workloads (e.g., using a self-hosted versus GitHub-hosted runner, choosing supported operating systems)
- Learn the difference between GitHub-hosted and self-hosted runners
- Learn to configure self-hosted runners for enterprise use (e.g., including proxies, labels, networking)
- Learn how to manage self-hosted runners using groups (e.g., managing access, moving runners into and between groups)
- Learn how to monitor, troubleshoot, and update self-hosted runners
4.3 Explain how to manage encrypted secrets in the enterprise
- Learn to identify the scope of encrypted secrets
- Learn how to access encrypted secrets within actions and workflows
- Learn how to manage organization-level encrypted secrets
- Learn how to manage repository-level encrypted secrets