From 499be4f2171a2c89e2eecf7ecbcfa4ba5ecab6e3 Mon Sep 17 00:00:00 2001 From: yaswant <2984440+yaswant@users.noreply.github.com> Date: Fri, 17 Jul 2026 11:59:27 +0100 Subject: [PATCH 1/2] Update workflows and project metadata --- .github/workflows/cla-check.yaml | 27 +++++++++++++++++++ .github/workflows/publish_wps.yaml | 2 +- .github/workflows/track-review-project.yaml | 19 +++++++++---- .../workflows/trigger-project-workflow.yaml | 19 +++++++++---- .github/zizmor.yml | 22 +++++++++++++++ CONTRIBUTORS.md | 5 ++++ pyproject.toml | 11 +++++++- 7 files changed, 93 insertions(+), 12 deletions(-) create mode 100644 .github/workflows/cla-check.yaml create mode 100644 .github/zizmor.yml create mode 100644 CONTRIBUTORS.md diff --git a/.github/workflows/cla-check.yaml b/.github/workflows/cla-check.yaml new file mode 100644 index 00000000..490d7f48 --- /dev/null +++ b/.github/workflows/cla-check.yaml @@ -0,0 +1,27 @@ +# ----------------------------------------------------------------------------- +# (C) Crown copyright Met Office. All rights reserved. +# The file LICENCE, distributed with this code, contains details of the terms +# under which the code may be used. +# ----------------------------------------------------------------------------- + +# Check Contributor Licence Agreement + +name: Legal + +on: + pull_request_target: + +concurrency: + # Automatically cancels the workflow run instantly before the + # engine can parse empty jobs and generate notification emails + group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.sha }} + cancel-in-progress: ${{ github.event.pull_request.head.repo.full_name != 'MetOffice/simulation-systems' }} + +permissions: {} + +jobs: + cla: + uses: MetOffice/growss/.github/workflows/cla-check.yaml@develop + permissions: + contents: read # Required to evaluate the event trigger metadata safely + pull-requests: write # Required for the downstream engine to post status comments on the PR diff --git a/.github/workflows/publish_wps.yaml b/.github/workflows/publish_wps.yaml index 8bbeed4d..575521bc 100644 --- a/.github/workflows/publish_wps.yaml +++ b/.github/workflows/publish_wps.yaml @@ -22,7 +22,7 @@ jobs: docs: uses: MetOffice/growss/.github/workflows/sphinx-docs.yaml@develop with: - python-version: "3.12.9" + python-version: "3.12.12" timeout-minutes: 10 docs-dir: . source-dir: ./source diff --git a/.github/workflows/track-review-project.yaml b/.github/workflows/track-review-project.yaml index 639477cd..0a0bc1de 100644 --- a/.github/workflows/track-review-project.yaml +++ b/.github/workflows/track-review-project.yaml @@ -1,3 +1,9 @@ +# ----------------------------------------------------------------------------- +# (C) Crown copyright Met Office. All rights reserved. +# The file LICENCE, distributed with this code, contains details of the terms +# under which the code may be used. +# ----------------------------------------------------------------------------- + name: Track Review Project on: @@ -7,11 +13,14 @@ on: - completed permissions: - actions: read - contents: read - pull-requests: write + contents: read # Required to evaluate the event trigger metadata safely jobs: track_review_project: - uses: MetOffice/growss/.github/workflows/track-review-project.yaml@main - secrets: inherit + permissions: + actions: read # Required to check out code or parse files safely + contents: read # Required to read the upstream triggered workflow run artifact status + pull-requests: write # Required for the downstream engine to add comments or update metadata on the PR + uses: MetOffice/growss/.github/workflows/track-review-project.yaml@develop + secrets: + PROJECT_ACTION_PAT: ${{ secrets.PROJECT_ACTION_PAT }} diff --git a/.github/workflows/trigger-project-workflow.yaml b/.github/workflows/trigger-project-workflow.yaml index ccb7a55b..a4135998 100644 --- a/.github/workflows/trigger-project-workflow.yaml +++ b/.github/workflows/trigger-project-workflow.yaml @@ -1,3 +1,9 @@ +# ----------------------------------------------------------------------------- +# (C) Crown copyright Met Office. All rights reserved. +# The file LICENCE, distributed with this code, contains details of the terms +# under which the code may be used. +# ----------------------------------------------------------------------------- + name: Trigger Review Project on: @@ -7,11 +13,14 @@ on: pull_request_review_comment: permissions: - actions: read - contents: read - pull-requests: write + contents: read # Required to evaluate the event trigger metadata safely jobs: trigger_project_workflow: - uses: MetOffice/growss/.github/workflows/trigger-project-workflow.yaml@main - secrets: inherit + if: github.repository == 'MetOffice/simulation-systems' + + permissions: + actions: read # Required to check out code or parse files safely + contents: read # Required to read the upstream triggered workflow run artifact status + pull-requests: write # Required for the downstream engine to add comments or update metadata on the PR + uses: MetOffice/growss/.github/workflows/trigger-project-workflow.yaml@develop diff --git a/.github/zizmor.yml b/.github/zizmor.yml new file mode 100644 index 00000000..9c40e861 --- /dev/null +++ b/.github/zizmor.yml @@ -0,0 +1,22 @@ +# ------------------------------------------------------------------------------ +# (c) Crown copyright Met Office. All rights reserved. +# The file LICENCE, distributed with this code, contains details of the terms +# under which the code may be used. +# ------------------------------------------------------------------------------ + +# Rules for Zizmor GitHub workflow linter. This file is used to configure which +# rules to ignore for specific workflow files, allowing for exceptions to be +# made where necessary while still enforcing best practices across the codebase. +rules: + unpinned-uses: + ignore: + - "cla-check.yaml" + - "lint-fortran.yaml" + - "publish_wps.yaml" + - "track-review-project.yaml" + - "trigger-project-workflow.yaml" + dangerous-triggers: + ignore: + - "cla-check.yaml" + - "track-review-project.yaml" + - "trigger-project-workflow.yaml" diff --git a/CONTRIBUTORS.md b/CONTRIBUTORS.md new file mode 100644 index 00000000..8913a005 --- /dev/null +++ b/CONTRIBUTORS.md @@ -0,0 +1,5 @@ +# Contributors + +| GitHub user | Real Name | Affiliation | Date | +| ----------- | --------------- | ----------- | ---------- | +| yaswant | Yaswant Pradhan | Met Office | 2026-07-17 | diff --git a/pyproject.toml b/pyproject.toml index 255263c3..200bd8e0 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,8 +1,9 @@ [project] name = "simulation-systems" version = "0.1.0" -description = "Simulation Systems Working Practices" +description = "Simulation Systems Working Practices & Discussions" readme = "README.md" +license = { file = "LICENSE" } requires-python = ">=3.11" dependencies = [ "pydata-sphinx-theme==0.16.1", @@ -14,3 +15,11 @@ dependencies = [ "sphinxcontrib-svg2pdfconverter==1.3.0", "sphinxcontrib-mermaid==1.1.0", ] + +[project.urls] +repository = "https://github.com/MetOffice/simulation-systems" +documentation = "https://metoffice.github.io/simulation-systems/" +discussion = "https://github.com/MetOffice/simulation-systems/discussions" + +[tool.setuptools] +packages = [] From 90c18b0bed74599edfeb1f9be3b967ad3977c517 Mon Sep 17 00:00:00 2001 From: yaswant <2984440+yaswant@users.noreply.github.com> Date: Wed, 22 Jul 2026 16:11:52 +0100 Subject: [PATCH 2/2] Update workflow references to specific version tags --- .github/workflows/cla-check.yaml | 2 +- .github/workflows/publish_wps.yaml | 2 +- .github/workflows/track-review-project.yaml | 2 +- .github/workflows/trigger-project-workflow.yaml | 2 +- .github/zizmor.yml | 7 ------- 5 files changed, 4 insertions(+), 11 deletions(-) diff --git a/.github/workflows/cla-check.yaml b/.github/workflows/cla-check.yaml index 490d7f48..7c3bc45f 100644 --- a/.github/workflows/cla-check.yaml +++ b/.github/workflows/cla-check.yaml @@ -21,7 +21,7 @@ permissions: {} jobs: cla: - uses: MetOffice/growss/.github/workflows/cla-check.yaml@develop + uses: MetOffice/growss/.github/workflows/cla-check.yaml@0f9ffe6a138ae9943053621916a850a075997db8 # v1.0.0 permissions: contents: read # Required to evaluate the event trigger metadata safely pull-requests: write # Required for the downstream engine to post status comments on the PR diff --git a/.github/workflows/publish_wps.yaml b/.github/workflows/publish_wps.yaml index 575521bc..931fea1b 100644 --- a/.github/workflows/publish_wps.yaml +++ b/.github/workflows/publish_wps.yaml @@ -20,7 +20,7 @@ concurrency: jobs: docs: - uses: MetOffice/growss/.github/workflows/sphinx-docs.yaml@develop + uses: MetOffice/growss/.github/workflows/sphinx-docs.yaml@0f9ffe6a138ae9943053621916a850a075997db8 # v1.0.0 with: python-version: "3.12.12" timeout-minutes: 10 diff --git a/.github/workflows/track-review-project.yaml b/.github/workflows/track-review-project.yaml index 0a0bc1de..1ab60122 100644 --- a/.github/workflows/track-review-project.yaml +++ b/.github/workflows/track-review-project.yaml @@ -21,6 +21,6 @@ jobs: actions: read # Required to check out code or parse files safely contents: read # Required to read the upstream triggered workflow run artifact status pull-requests: write # Required for the downstream engine to add comments or update metadata on the PR - uses: MetOffice/growss/.github/workflows/track-review-project.yaml@develop + uses: MetOffice/growss/.github/workflows/track-review-project.yaml@0f9ffe6a138ae9943053621916a850a075997db8 # v1.0.0 secrets: PROJECT_ACTION_PAT: ${{ secrets.PROJECT_ACTION_PAT }} diff --git a/.github/workflows/trigger-project-workflow.yaml b/.github/workflows/trigger-project-workflow.yaml index a4135998..68b85861 100644 --- a/.github/workflows/trigger-project-workflow.yaml +++ b/.github/workflows/trigger-project-workflow.yaml @@ -23,4 +23,4 @@ jobs: actions: read # Required to check out code or parse files safely contents: read # Required to read the upstream triggered workflow run artifact status pull-requests: write # Required for the downstream engine to add comments or update metadata on the PR - uses: MetOffice/growss/.github/workflows/trigger-project-workflow.yaml@develop + uses: MetOffice/growss/.github/workflows/trigger-project-workflow.yaml@0f9ffe6a138ae9943053621916a850a075997db8 # v1.0.0 diff --git a/.github/zizmor.yml b/.github/zizmor.yml index 9c40e861..e66c5e79 100644 --- a/.github/zizmor.yml +++ b/.github/zizmor.yml @@ -8,13 +8,6 @@ # rules to ignore for specific workflow files, allowing for exceptions to be # made where necessary while still enforcing best practices across the codebase. rules: - unpinned-uses: - ignore: - - "cla-check.yaml" - - "lint-fortran.yaml" - - "publish_wps.yaml" - - "track-review-project.yaml" - - "trigger-project-workflow.yaml" dangerous-triggers: ignore: - "cla-check.yaml"