Everything I know about GitHub Actions, the best CI/CD system out there

Dump Context Action

This week's Action Spotlight introduces a new kind of action. It's the first time we're featuring a composite action, which allows you to include multiple workflow steps as a single uses statement.

Auto-approve Workflow Action

When GitHub disabled automatic workflow runs to prevent crypto miners it made some OSS maintainers lives harder, so I wrote a GitHub Action that automatically approves all pending workflow runs (so …

Markdown Meta Action

Content containing some YAML frontmatter is very common nowadays (in fact, you're reading a post that uses it right now).

YAMLer Action

When running your workflows, sometimes you need to read information from a file in your repository. YAMLer parses the provided YAML file and makes the values in the file available as output variables.

GitHub Slug Action

We're looking at a different kind of action today! This action doesn't actually do anything. Instead, it makes more information available in your workflow and the environment for other actions to use.

Create or Update PR Action

Following on from our theme of actions to commit and push changes, today’s action can commit and push any local edits and raise a pull request automatically.

GitHub Push Action

Today we’re looking at ad-m/github-push-action, the third and final action related to pushing changes made during a GitHub Actions workflow run back to a repo.

Add and Commit action

Add and Commit is the second (of three!) actions that can be used to push your changes to a repo during a GitHub Actions workflow.

Git auto-commit action

February’s Action Spotlight theme is all about committing changes that you’ve made back to your GitHub repo, starting with stefanzweifel/git-auto-commit-action.

Require Labels Action

This week’s featured action is one of my own! Require labels is an action that can be used to enforce workflows that require labels to be added to a pull request.

Merge Schedule Action

I'm trying to get ahead on the Action Spotlight series, and needed a way to write and stage a post in advance of it's Friday publication date.

Faster GitHub Actions with Build and Tag Action

It’s weird saying that I have a favourite GitHub Action, but I do, and that action is JasonEtco’s build-and-tag-action.

Ensure your GitHub Actions are pinned to a SHA

It’s the first of January and we’re getting started with a new series, the GitHub Action Spotlight.

Fetch all pages with Octokit pagination

A quick one today as I constantly need to fetch more than 100 results from the GitHub API using Octokit and always end up digging in to an old project to copy out this code snippet.

Follow GitHub Link headers with Bash

When working with the GitHub API, data may be returned across multiple pages of results. This is communicated using a Link header, with rel="next". There are libraries available to help work with …

Semantic versioning for GitHub Actions

There are three ways to use a GitHub action in your projects:

Improve your GitHub Actions security

Just before Christmas, Julien Renaux published a thought provoking article on the risks of using GitHub actions that you don’t own. You can read the whole thing, but Julien provides a summary for us …

Create a GitHub Action using actions-toolkit

In this post we're going to create a GitHub action that outputs an emoji when triggered by a release. It'll output 🎉 if a release is created, ☠️ if it's deleted and ⚠️ if it's any other action.

Testing GitHub Actions with act

GitHub actions are great, but whilst you're building an action it can be quite painful to keep pushing changes to Github to trigger action runs. This is where act can help! act is a command line …