Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 0 additions & 3 deletions .gitallowed

This file was deleted.

6 changes: 3 additions & 3 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,15 +6,15 @@ permissions: {}

jobs:
get_config_values:
uses: NHSDigital/eps-common-workflows/.github/workflows/get-repo-config.yml@e798d5aee897de6f7dc387dd5623fcd9ba4c8929
uses: NHSDigital/eps-common-workflows/.github/workflows/get-repo-config.yml@8b259f4f2d2b8ff1345fb0d2f9b9f0fbb9d19845
with:
verify_published_from_main_image: true
permissions:
attestations: read
contents: read
packages: read
quality_checks:
uses: NHSDigital/eps-common-workflows/.github/workflows/quality-checks-devcontainer.yml@e798d5aee897de6f7dc387dd5623fcd9ba4c8929
uses: NHSDigital/eps-common-workflows/.github/workflows/quality-checks-devcontainer.yml@8b259f4f2d2b8ff1345fb0d2f9b9f0fbb9d19845
needs:
- get_config_values
permissions:
Expand All @@ -27,7 +27,7 @@ jobs:
SONAR_TOKEN: '${{ secrets.SONAR_TOKEN }}'
tag_release:
needs: [quality_checks, get_config_values]
uses: NHSDigital/eps-common-workflows/.github/workflows/tag-release-devcontainer.yml@e798d5aee897de6f7dc387dd5623fcd9ba4c8929
uses: NHSDigital/eps-common-workflows/.github/workflows/tag-release-devcontainer.yml@8b259f4f2d2b8ff1345fb0d2f9b9f0fbb9d19845
permissions:
id-token: write
contents: write
Expand Down
8 changes: 4 additions & 4 deletions .github/workflows/pull_request.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,23 +7,23 @@ permissions: {}
jobs:
dependabot-auto-approve-and-merge:
needs: quality_checks
uses: NHSDigital/eps-common-workflows/.github/workflows/dependabot-auto-approve-and-merge.yml@e798d5aee897de6f7dc387dd5623fcd9ba4c8929
uses: NHSDigital/eps-common-workflows/.github/workflows/dependabot-auto-approve-and-merge.yml@8b259f4f2d2b8ff1345fb0d2f9b9f0fbb9d19845
permissions:
contents: write
pull-requests: write
secrets:
AUTOMERGE_APP_ID: '${{ secrets.AUTOMERGE_APP_ID }}'
AUTOMERGE_PEM: '${{ secrets.AUTOMERGE_PEM }}'
get_config_values:
uses: NHSDigital/eps-common-workflows/.github/workflows/get-repo-config.yml@e798d5aee897de6f7dc387dd5623fcd9ba4c8929
uses: NHSDigital/eps-common-workflows/.github/workflows/get-repo-config.yml@8b259f4f2d2b8ff1345fb0d2f9b9f0fbb9d19845
with:
verify_published_from_main_image: false
permissions:
attestations: read
contents: read
packages: read
quality_checks:
uses: NHSDigital/eps-common-workflows/.github/workflows/quality-checks-devcontainer.yml@e798d5aee897de6f7dc387dd5623fcd9ba4c8929
uses: NHSDigital/eps-common-workflows/.github/workflows/quality-checks-devcontainer.yml@8b259f4f2d2b8ff1345fb0d2f9b9f0fbb9d19845
needs:
- get_config_values
with:
Expand All @@ -35,7 +35,7 @@ jobs:
secrets:
SONAR_TOKEN: '${{ secrets.SONAR_TOKEN }}'
pr_title_format_check:
uses: NHSDigital/eps-common-workflows/.github/workflows/pr_title_check.yml@e798d5aee897de6f7dc387dd5623fcd9ba4c8929
uses: NHSDigital/eps-common-workflows/.github/workflows/pr_title_check.yml@8b259f4f2d2b8ff1345fb0d2f9b9f0fbb9d19845
permissions:
pull-requests: write
get_issue_number:
Expand Down
6 changes: 3 additions & 3 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,15 +7,15 @@ permissions: {}

jobs:
get_config_values:
uses: NHSDigital/eps-common-workflows/.github/workflows/get-repo-config.yml@e798d5aee897de6f7dc387dd5623fcd9ba4c8929
uses: NHSDigital/eps-common-workflows/.github/workflows/get-repo-config.yml@8b259f4f2d2b8ff1345fb0d2f9b9f0fbb9d19845
with:
verify_published_from_main_image: false
permissions:
attestations: read
contents: read
packages: read
quality_checks:
uses: NHSDigital/eps-common-workflows/.github/workflows/quality-checks-devcontainer.yml@e798d5aee897de6f7dc387dd5623fcd9ba4c8929
uses: NHSDigital/eps-common-workflows/.github/workflows/quality-checks-devcontainer.yml@8b259f4f2d2b8ff1345fb0d2f9b9f0fbb9d19845
needs:
- get_config_values
permissions:
Expand All @@ -28,7 +28,7 @@ jobs:
SONAR_TOKEN: '${{ secrets.SONAR_TOKEN }}'
tag_release:
needs: [quality_checks, get_config_values]
uses: NHSDigital/eps-common-workflows/.github/workflows/tag-release-devcontainer.yml@e798d5aee897de6f7dc387dd5623fcd9ba4c8929
uses: NHSDigital/eps-common-workflows/.github/workflows/tag-release-devcontainer.yml@8b259f4f2d2b8ff1345fb0d2f9b9f0fbb9d19845
permissions:
id-token: write
contents: write
Expand Down
1 change: 1 addition & 0 deletions .grype.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -37,6 +37,7 @@ ignore:
- vulnerability: CVE-2026-33810
- vulnerability: CVE-2026-6100
- vulnerability: CVE-2026-4786
- vulnerability: GHSA-pc3f-x583-g7j2
# node_24 vulnerabilities
- vulnerability: GHSA-c2c7-rcm5-vvqj
- vulnerability: GHSA-7r86-cg39-jmmj
Expand Down
17 changes: 13 additions & 4 deletions .pre-commit-config.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,14 @@ repos:

- repo: local
hooks:
- id: grype-scan-local
name: Grype scan local changes
entry: make
Comment on lines +27 to +28
Copy link

Copilot AI Apr 17, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The hook is named “Grype scan local changes”, but the underlying grype-scan-local target runs grype . (repo-wide scan) rather than scanning only staged/local changes. Either rename the hook to reflect the actual behavior or adjust the target so it only scans what changed.

Copilot generated this review using guidance from repository custom instructions.
args: ["grype-scan-local"]
Comment on lines +28 to +29
Copy link

Copilot AI Apr 17, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

grype-scan-local is invoked via entry: make/args: ["grype-scan-local"], but that target is not defined in this repo’s root Makefile (it will fall through to the %: rule and rely on /usr/local/share/eps/Mk/common.mk). This makes the pre-commit hook dependent on an external file that won’t exist for contributors not running inside the base devcontainer image. Consider defining grype-scan-local in the repo Makefile (or invoking grype directly) so the hook works in a standard checkout.

Suggested change
entry: make
args: ["grype-scan-local"]
entry: bash
args:
- -c
- |
if ! command -v grype > /dev/null 2>&1; then
echo "Error: grype is not installed or not available on PATH."
echo "Please install grype to run this pre-commit hook."
exit 1
fi
grype dir:.

Copilot uses AI. Check for mistakes.
language: system
pass_filenames: false
always_run: true
Copy link

Copilot AI Apr 17, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

always_run: true means the Grype scan will run on every commit regardless of what changed, and since it ultimately scans the whole repository (grype .) this can add significant overhead to the commit path. If the goal is to scan only when dependency-relevant files change, consider removing always_run and using files:/types: filters (or keeping it always-run but clearly documenting the performance impact in the hook name/description).

Suggested change
always_run: true
files: ^(Dockerfile|docker-compose\.ya?ml|requirements(\.txt|/.*\.txt)?|poetry\.lock|pyproject\.toml|Pipfile(\.lock)?|setup\.(py|cfg)|package(-lock)?\.json|npm-shrinkwrap\.json|yarn\.lock|pnpm-lock\.yaml|go\.(mod|sum)|Cargo\.(toml|lock)|Gemfile(\.lock)?|pom\.xml|build\.gradle(\.kts)?|gradle\.properties|gradle/libs\.versions\.toml|composer\.(json|lock)|\.github/workflows/.*\.ya?ml)$

Copilot uses AI. Check for mistakes.

- id: lint-githubactions
name: Lint github actions
entry: make
Expand All @@ -41,14 +49,15 @@ repos:
types_or: [sh, shell]
pass_filenames: false

- id: git-secrets
name: Git Secrets
description: git-secrets scans commits, commit messages, and --no-ff merges to prevent adding secrets into your git repositories.
- id: gitleaks
name: Git Leaks
description: gitleaks scans commits, commit messages, and --no-ff merges to prevent adding secrets into your git repositories.
entry: bash
args:
- -c
- 'git-secrets --pre_commit_hook'
- "gitleaks git --pre-commit --redact --staged --verbose"
Comment on lines +53 to +58
Copy link

Copilot AI Apr 17, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The gitleaks hook description claims it scans commits, commit messages, and --no-ff merges, but the configured command runs only against staged content (--staged) during the pre-commit stage. Please update the description to match the actual behavior, or add an additional commit-msg stage hook to scan commit messages (and include commit-msg in default_stages if needed).

Copilot uses AI. Check for mistakes.
language: system

- id: check-commit-signing
name: Check commit signing
description: Ensures that commits are GPG signed
Expand Down
Loading