Skip to content

Commit 156cc42

Browse files
authored
Merge pull request #149 from ecmwf-actions/fix/sync-anemoi-feedback
[file sync] Incorporate Anemoi feedback
2 parents 31a716e + e06ba91 commit 156cc42

15 files changed

+88
-38
lines changed
Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
{% extends "sync-files/anemoi/.github/PULL_REQUEST_TEMPLATE/pull_request_template.md" %}
2+
3+
{% block testing %}
4+
- [ ] I have tested the changes on a single GPU
5+
- [ ] I have tested the changes on multiple GPUs / multi-node setups
6+
- [ ] I have run the [Benchmark Profiler](https://anemoi.readthedocs.io/projects/training/en/latest/user-guide/benchmarking.html) against the old version of the code
7+
8+
{% endblock %}
9+
10+
{% block documentation %}
11+
{% endblock %}
12+
13+
{% block dependencies %}
14+
- [ ] I have not introduced new dependencies in the inference portion of the pipeline
15+
{% endblock %}

sync-files/anemoi/.github/pull_request_template.md renamed to sync-files/anemoi/.github/PULL_REQUEST_TEMPLATE/pull_request_template.md

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -22,18 +22,18 @@
2222
### Code Performance and Testing
2323

2424
- [ ] I have added tests that prove my fix is effective or that my feature works
25-
- [ ] I ran the complete Pytest test suite locally, and they pass
26-
- [ ] I have tested the changes on a single GPU
27-
- [ ] I have tested the changes on multiple GPUs / multi-node setups
28-
- [ ] I have run the Benchmark Profiler against the old version of the code
25+
- [ ] I ran the [complete Pytest test](https://anemoi.readthedocs.io/projects/training/en/latest/dev/testing.html) suite locally, and they pass
26+
{% block testing %}
27+
{% endblock %}
2928

3029
<!-- In case this affects the model sharding or other specific components please describe these here. -->
3130

3231
### Dependencies
3332

3433
- [ ] I have ensured that the code is still pip-installable after the changes and runs
35-
- [ ] I have not introduced new dependencies in the inference portion of the model
3634
- [ ] I have tested that new dependencies themselves are pip-installable.
35+
{% block dependencies %}
36+
{% endblock %}
3737

3838
<!-- List any new dependencies that are required for this change and the justification to add them. -->
3939

@@ -42,6 +42,8 @@
4242
- [ ] My code follows the style guidelines of this project
4343
- [ ] I have updated the documentation and docstrings to reflect the changes
4444
- [ ] I have added comments to my code, particularly in hard-to-understand areas
45+
{% block docs %}
46+
{% endblock %}
4547

4648
<!-- Describe any major updates to the documentation -->
4749

sync-files/anemoi/.github/labeler.yml

Lines changed: 22 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,34 +1,42 @@
1+
# This is the configuration file for the labeler action.
2+
# It assigns labels to pull requests based on the files changed in the PR.
3+
# See more here: https://github.com/actions/labeler
14
dependencies:
25
- changed-files:
36
- any-glob-to-any-file:
4-
- "requirements.txt"
5-
- "setup.py"
6-
- "pyproject.toml"
7-
- "Pipfile"
8-
- "Pipfile.lock"
9-
- "requirements/*.txt"
10-
- "requirements/*.in"
7+
- "**/requirements.txt"
8+
- "**/setup.py"
9+
- "**/pyproject.toml"
10+
- "**/Pipfile"
11+
- "**/Pipfile.lock"
12+
- "**/requirements/*.txt"
13+
- "**/requirements/*.in"
1114

1215
documentation:
1316
- changed-files:
1417
- any-glob-to-any-file:
15-
- "docs/**/*"
18+
- "**/docs/**/*"
1619
- "*.md"
1720
- "*.rst"
1821

1922
config:
2023
- changed-files:
2124
- any-glob-to-any-file:
22-
- ".pre-commit-config.yaml"
23-
- "config/**/*"
24-
- "settings/**/*"
25-
- "*.ini"
26-
- "*.cfg"
27-
- "*.conf"
25+
- "**/src/**/config/**/*"
2826

2927
CI/CD:
3028
- changed-files:
3129
- any-glob-to-any-file:
30+
- "**/.pre-commit-config.yaml"
3231
- ".github/**/*"
3332
- "tox.ini"
3433
- ".coveragerc"
34+
35+
tests:
36+
- changed-files:
37+
- any-glob-to-any-file:
38+
- "**/tests/**/*"
39+
- "**/test/**/*"
40+
- "**/test_*.py"
41+
- "**/test.py"
42+
- "**/conftest.py"

sync-files/anemoi/.github/workflows/downstream-ci-hpc.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,5 @@
1+
# This workflow triggers tests on dependent packages.
2+
# The dependency tree itself is defined in ecmwf-actions/downstream-ci/
13
name: Test downstream dependent packages on HPC
24

35
on:

sync-files/anemoi/.github/workflows/pr-conventional-commit.yml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
1-
name: "Ensure Conventional Commit in PR title"
1+
# This workflow ensures that the PR title follows the Conventional Commit format.
2+
name: "[Pull Request] Ensure Conventional Commit in PR title"
23

34
on:
45
pull_request_target:

sync-files/anemoi/.github/workflows/pr-label-conventional-commits.yml

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,6 @@
1-
name: "Pull Request Labeler Conventional Commits"
1+
# This workflow assigns labels to a pull request based on the Conventional Commits format.
2+
# This is necessary for release-please to work properly.
3+
name: "[Pull Request] Label Conventional Commits"
24

35
on:
46
pull_request:
@@ -37,7 +39,7 @@ jobs:
3739
nouns: ['build','rebuild','ci']
3840
labels: ['CI/CD']
3941
- type: 'config'
40-
nouns: ['config', 'conf', 'cofiguration']
42+
nouns: ['config', 'conf', 'configuration']
4143
labels: ['config']
4244
maintain-labels-not-matched: false
4345
apply-changes: true
Lines changed: 10 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,17 @@
1-
name: "Pull Request Labeler File-based"
1+
# This workflow assigns labels to a pull request based on the files changed in the PR.
2+
# The labels are defined in the `.github/labels.yml` file.
3+
name: "[Pull Request] Label File-based"
24
on:
3-
- pull_request_target
5+
pull_request_target:
6+
types: [opened, synchronize]
7+
8+
permissions:
9+
contents: read
10+
pull-requests: write
411

512
jobs:
613
labeler:
7-
permissions:
8-
contents: read
9-
pull-requests: write
1014
runs-on: ubuntu-latest
1115
steps:
1216
- name: Assign labels from file changes
13-
- uses: actions/labeler@v5
17+
uses: actions/labeler@v5

sync-files/anemoi/.github/workflows/pr-label-public.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
# Manage labels of pull requests that originate from forks
2-
name: Label PRs from public forks
2+
name: "[Pull Request] Label PRs from public forks"
33

44
on:
55
pull_request_target:

sync-files/anemoi/.github/workflows/push-to-private.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
# This workflow pushes changes from a public repository to a private repository.
12
name: Push to private repository
23

34
on:

sync-files/anemoi/.github/workflows/python-publish.yml

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,3 @@
1-
---
21
# This workflow will upload a Python Package using Twine when a release is created
32
# For more information see: https://help.github.com/en/actions/language-and-framework-guides/using-python-with-github-actions#publishing-to-package-registries
43

sync-files/anemoi/.github/workflows/python-pull-request.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
# This workflow runs pre-commit checks and pytest tests against multiple platforms and Python versions.
12
name: Code Quality checks and Testing
23

34
on:

sync-files/anemoi/.github/workflows/readthedocs-pr-update.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,5 @@
1+
# This workflow adds a link to the experimental documentation build to the PR.
2+
# This does NOT trigger a build of the documentation, this is handled through webhooks.
13
name: Read the Docs PR Preview
24
on:
35
pull_request_target:

sync-files/anemoi/.github/workflows/release-please.yml

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,12 @@
1+
# This workflow uses an action to run Release Please to create a release PR.
2+
# It is governed by the config and manifest in the root of the repo.
3+
# For more information see: https://github.com/googleapis/release-please
14
name: Run Release Please
25
on:
36
push:
47
branches:
58
- main
6-
- hotfix
9+
- hotfix/*
710

811
permissions:
912
contents: write

sync-files/anemoi/README.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# anemoi-utils
1+
# {{ repo_name }}
22

33
**DISCLAIMER**
44
This project is **BETA** and will be **Experimental** for the foreseeable future.
@@ -9,7 +9,7 @@ Interfaces and functionality are likely to change, and the project itself may be
99

1010
## Documentation
1111

12-
The documentation can be found at https://{{ repo-name }}.readthedocs.io/.
12+
The documentation can be found at https://{{ repo_name }}.readthedocs.io/.
1313

1414
## Install
1515

sync-files/sync.yml

Lines changed: 15 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,7 @@
1+
# This configuration file is used by the file broadcasting infrastructure in .github/workflows/sync-files-to-repos.yml.
2+
# It defines the files to be copied to the repositories listed in the `repos` field.
3+
# You can use templating and fairly intricate logic to define the files to be copied and replaced.
4+
# Read more here: https://github.com/BetaHuhn/repo-file-sync-action/
15
group:
26
##################
37
# Anemoi Files #
@@ -42,6 +46,7 @@ group:
4246
short_desc: "Datasets for training data-driven weather forecasts."
4347
exclude: |
4448
.release-please-manifest.json
49+
.github/PULL_REQUEST_TEMPLATE/pull_request_template-core.md
4550
repos: |
4651
ecmwf/anemoi-datasets
4752
@@ -57,6 +62,7 @@ group:
5762
short_desc: "Inference tools for data-driven weather forecasts."
5863
exclude: |
5964
.release-please-manifest.json
65+
.github/PULL_REQUEST_TEMPLATE/pull_request_template-core.md
6066
repos: |
6167
ecmwf/anemoi-inference
6268
@@ -72,6 +78,7 @@ group:
7278
short_desc: "Registry for data-driven weather forecasts."
7379
exclude: |
7480
.release-please-manifest.json
81+
.github/PULL_REQUEST_TEMPLATE/pull_request_template-core.md
7582
repos: |
7683
ecmwf/anemoi-registry
7784
@@ -87,6 +94,7 @@ group:
8794
short_desc: "Miscellanous data transformation functions for training data-driven weather forecasts."
8895
exclude: |
8996
.release-please-manifest.json
97+
.github/PULL_REQUEST_TEMPLATE/pull_request_template-core.md
9098
repos: |
9199
ecmwf/anemoi-transform
92100
@@ -102,6 +110,7 @@ group:
102110
short_desc: "Miscellanous tools for training data-driven weather forecasts."
103111
exclude: |
104112
.release-please-manifest.json
113+
.github/PULL_REQUEST_TEMPLATE/pull_request_template-core.md
105114
repos: |
106115
ecmwf/anemoi-utils
107116
@@ -145,18 +154,19 @@ group:
145154
dest: training/CONTRIBUTORS.md
146155
template:
147156
repo_name: anemoi-training
148-
- source: sync-files/anemoi/.github/pull_request_template.md
149-
dest: .github/pull_request_template.md
157+
- source: sync-files/anemoi/.github/PULL_REQUEST_TEMPLATE/pull_request_template-core.md
158+
dest: .github/PULL_REQUEST_TEMPLATE/pull_request_template.md
159+
template: true
150160
- source: sync-files/anemoi/.gitignore
151161
dest: .gitignore
152162
- source: sync-files/general/python/.github/dependabot.yml
153163
dest: .github/dependabot.yml
154164
- source: sync-files/anemoi/.github/workflows/pr-label-public.yml
155-
dest: .github/workflows/label-public-pr.yml
165+
dest: .github/workflows/pr-label-public.yml
156166
template:
157167
repo_name: anemoi-core
158-
- source: sync-files/anemoi/.github/workflows/pr-label-conventional-commit.yml
159-
dest: .github/workflows/pr-label-conventional-commit.yml
168+
- source: sync-files/anemoi/.github/workflows/pr-label-conventional-commits.yml
169+
dest: .github/workflows/pr-label-conventional-commits.yml
160170
template:
161171
repo_name: anemoi-core
162172
- source: sync-files/anemoi/.github/workflows/pr-label-file-based.yml

0 commit comments

Comments
 (0)