github-actions

💣 GitHub Actions

Ministry of Justice Repository Compliance Badge

A single pane of glass for discovering reusable GitHub Actions and Workflows maintained across the Ministry of Justice.

This repository does not host any GitHub Actions or Workflows itself. Instead, it serves as a discovery hub for teams across MoJ to advertise their reusable GitHub automation tools, enabling greater collaboration, consistency, and efficiency across projects.

🧭 Purpose of This Repository

This repo acts as a directory of reusable GitHub Actions and Workflows maintained by MoJ teams. It is designed to:

📚 Repositories Hosting Reusable Actions & Workflows

Below is a growing list of repositories that contain reusable Actions or Workflows:

Repository Maintainer Description
analytical-platform-github-actions Analytical Platform Analytical Platform GitHub Actions
hmpps-github-actions HMPPS Github actions for HMPPS projects
laa-reusable-github-actions LAA A collection of re-useable GitHub actions
modernisation-platform-github-actions Modernisation Platform A collection of reusable GitHub Actions for the Modernisation Platform, designed to streamline and enhance workflows across our projects
opg-github-actions OPG OPG shared GitHub composite actions for workflows
Add yours here You? Open a PR to add your repository and reusable components

✨ Want to list your repository? See how to get involved

🔍 What Are Reusable GitHub Actions?

GitHub Actions can automate workflows for CI/CD, security checks, infrastructure provisioning, and more.

There are two main types of reusable automation:

Learn more:

🧪 How to Use a Reusable Workflow

You can call reusable workflows from by using the uses attribute. Example:

jobs:
  zizmor:
    name: Zizmor
    permissions:
      actions: read
      contents: read
      security-events: write
    uses: ministryofjustice/analytical-platform-github-actions/.github/workflows/reusable-zizmor.yml@<commit SHA> # <version>

Make sure to check each repository’s README for usage instructions and required inputs/secrets.

🤝 How to Contribute

We welcome contributions from all MoJ teams! Here’s how to get involved:

  1. Host your own GitHub Actions or Workflows in your team’s repo.
  2. Document their purpose, usage, and versioning clearly in the README.md.
  3. Open a pull request to this repository adding your repo to the directory table above.
  4. Optionally, provide example usages to help others adopt them faster.

📌 For new teams: We recommend versioning your actions using tags (e.g. v1, v2.1.0) to ensure stability.