Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

mirror repository on gitlab + ci #1025

Merged
merged 63 commits into from
Sep 13, 2022
Merged
Show file tree
Hide file tree
Changes from 60 commits
Commits
Show all changes
63 commits
Select commit Hold shift + click to select a range
885f686
Merge branch 'release/1.2.x', set `main` version extension to "dev"
ClaudiaComito Apr 27, 2022
e30d739
Update link to llnl MPI tutorial and merge branch 'release/1.2.x'
ClaudiaComito May 26, 2022
08d0dcb
Replace bug report MD template with form in view of further automation
ClaudiaComito Jun 1, 2022
545a694
Fix bug report file name
ClaudiaComito Jun 1, 2022
295351c
Update bug_report.yml
ClaudiaComito Jun 1, 2022
91f8190
Update bug_report.yml
ClaudiaComito Jun 1, 2022
ef94a9b
Update bug_report.yml
ClaudiaComito Jun 1, 2022
4a1fc1a
Update bug_report.yml
ClaudiaComito Jun 1, 2022
cb94ad1
Auto generated release notes and changelog (#974)
JuanPedroGHM Jun 1, 2022
231831e
Tutorial note about local and global printing (#972)
JuanPedroGHM Jun 1, 2022
c1ef707
Updated the tutorial document. (#977)
Sai-Suraj-27 Jun 1, 2022
ee0ff4d
Set write permissions for workflow
ClaudiaComito Jul 2, 2022
a1f0b1b
Update schedule
ClaudiaComito Jul 2, 2022
96506fa
Update schedule
ClaudiaComito Jul 2, 2022
385374a
Update schedule
ClaudiaComito Jul 2, 2022
bff6b2c
Move pytorch version file out of workflows dir
ClaudiaComito Jul 4, 2022
4f59d69
Update paths
ClaudiaComito Jul 4, 2022
55fff46
[pre-commit.ci] pre-commit autoupdate
pre-commit-ci[bot] Jul 5, 2022
4fe322b
Push pytorch release update to release/1.2.x branch, not main
ClaudiaComito Jul 5, 2022
a52156b
Update schedule
ClaudiaComito Jul 5, 2022
229e172
Bypass `on push` trigger
ClaudiaComito Jul 5, 2022
6510ea4
Update schedule
ClaudiaComito Jul 5, 2022
2a947a1
Fix condition syntax
ClaudiaComito Jul 5, 2022
6ccec82
Fix syntax
ClaudiaComito Jul 5, 2022
3cc0080
On push trigger workaround
ClaudiaComito Jul 5, 2022
6c487d6
Update schedule
ClaudiaComito Jul 5, 2022
05a2acd
Update schedule
ClaudiaComito Jul 5, 2022
2223ce8
Merge branch 'main' into pre-commit-ci-update-config
ClaudiaComito Jul 6, 2022
d39cbfe
Enable non-negative sample size
neosunhan Jul 15, 2022
105b905
Read `min` value directly from torch return object
neosunhan Jul 15, 2022
54ab969
Enable non-negative number of samples for `logspace`
neosunhan Jul 15, 2022
2dfd591
Add test for `logspace`
neosunhan Jul 18, 2022
99aef73
Merge pull request #995 from helmholtz-analytics/features/994-linspac…
Markus-Goetz Jul 20, 2022
92e64c4
Merge branch 'main' into bug/996-iinfo-finfo-min
mtar Jul 21, 2022
891a983
Merge pull request #997 from helmholtz-analytics/bug/996-iinfo-finfo-min
mtar Jul 21, 2022
7ca100d
Merge branch 'main' into pre-commit-ci-update-config
mtar Jul 21, 2022
15240b0
Merge pull request #984 from helmholtz-analytics/pre-commit-ci-update…
mtar Jul 21, 2022
c85562b
Add MPI version field to bug report template
ClaudiaComito Aug 22, 2022
52d88c0
fix: set cuda rng state on gpu tests for test_random.py (#1014)
JuanPedroGHM Aug 23, 2022
11b152e
Create mirrorci.yml
mtar Sep 2, 2022
4ee921b
Create .gitlab-ci.yml
mtar Sep 2, 2022
3b26256
Update .gitlab-ci.yml
mtar Sep 2, 2022
e9f80df
Update .gitlab-ci.yml
mtar Sep 2, 2022
286a38e
Update .gitlab-ci.yml
mtar Sep 2, 2022
7d9adca
Update .gitlab-ci.yml
mtar Sep 2, 2022
9080403
Update .gitlab-ci.yml
mtar Sep 2, 2022
c1d648c
Update .gitlab-ci.yml
mtar Sep 2, 2022
65b5330
Update .gitlab-ci.yml
mtar Sep 2, 2022
07dfdf4
Update .gitlab-ci.yml
mtar Sep 2, 2022
5c7b82b
Update .gitlab-ci.yml
mtar Sep 2, 2022
fa9e681
Update .gitlab-ci.yml
mtar Sep 2, 2022
9538e15
Update .gitlab-ci.yml
mtar Sep 5, 2022
30bb389
Update .gitlab-ci.yml
mtar Sep 5, 2022
a545888
Update .gitlab-ci.yml
mtar Sep 5, 2022
1f4e805
Update .gitlab-ci.yml
mtar Sep 5, 2022
28d4a7b
Delete Jenkinsfile
mtar Sep 5, 2022
75b56d9
trigger on main and release branches + PRs only
mtar Sep 9, 2022
0086058
revert
mtar Sep 9, 2022
f9ee158
add parallel hdf5 & netcdf
mtar Sep 13, 2022
e54abb0
optional dependencies activated
mtar Sep 13, 2022
efefd8a
Merge branch 'release/1.2.x' into mirror-ci
ClaudiaComito Sep 13, 2022
309700a
exclude python 3.9 + pytorch 1.7
mtar Sep 13, 2022
e160224
Update torch 1.9 etc. versions
ClaudiaComito Sep 13, 2022
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
30 changes: 0 additions & 30 deletions .github/ISSUE_TEMPLATE/bug_report.md

This file was deleted.

67 changes: 67 additions & 0 deletions .github/ISSUE_TEMPLATE/bug_report.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,67 @@
name: Bug Report
description: File a bug report
title: "[Bug]: "
labels: ["bug"]

body:
- type: markdown
attributes:
value: |
Thanks for taking the time to fill out this bug report!
- type: textarea
id: what-happened
attributes:
label: What happened?
description: Also tell us, what did you expect to happen?
validations:
required: true
- type: textarea
id: code
attributes:
label: Code snippet triggering the error
description: Please copy and paste your lines of code.
render: shell
- type: textarea
id: logs
attributes:
label: Error message or erroneous outcome
description: Please copy and paste your error.
render: shell
- type: dropdown
id: version
attributes:
label: Version
description: What version of Heat are you running?
options:
- 1.2.x
- 1.1.x
- main (development branch)
validations:
required: true
- type: dropdown
id: python-version
attributes:
label: Python version
description: What Python version?
options:
- 3.8
- 3.9
- 3.10
- 3.7
- type: dropdown
id: pytorch-version
attributes:
label: PyTorch version
description: What PyTorch version?
options:
- 1.11
- 1.10
- 1.9
- 1.8
- 1.7
- type: textarea
id: mpi-version
attributes:
label: MPI version
description: OpenMPI, ParaStation, IntelMPI version?
render: shell
1 change: 1 addition & 0 deletions .github/pytorch-release-versions/pytorch-latest.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
1.12.0
43 changes: 43 additions & 0 deletions .github/release-drafter.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
categories:
- title: '🔥 Features'
labels:
- 'enhancement'
- title: '🐛 Bug Fixes'
labels:
- 'bug :bug:'
- title: '🧹 Maintenance'
label: 'chore'
- title: '📜 Documentation'
label: 'documentation :book:'
- title: '🧪 Testing'
label: 'testing'
- title: '💯 Benchmarking'
label: 'benchmarking'
- title: 'Linear Algebra'
label: 'linalg'
- title: 'DNDarray'
label: 'dndarray'
- title: 'Arithmetic'
label: 'arithmetic'
- title: 'Random'
label: 'random'
- title: 'Logical'
label: 'logical'
- title: 'Manipulation'
label: 'manipulation'
- title: 'Communication'
labels:
- 'io'
- 'communication'
change-template: '- #$NUMBER $TITLE (by @$AUTHOR)'
categorie-template: '### $TITLE'
exclude-labels:
- 'workflow'
template: |
## Changes

$CHANGES

## Contributors

$CONTRIBUTORS
27 changes: 27 additions & 0 deletions .github/workflows/changelog-updater.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
name: 'Update Changelog'

on:
release:
types: [released]

jobs:
update:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v2
with:
ref: main

- name: Update Changelog
uses: stefanzweifel/changelog-updater-action@v1
with:
release-notes: ${{ github.event.release.body }}
latest-version: ${{ github.event.release.name }}

- name: Commit updated CHANGELOG
uses: stefanzweifel/git-auto-commit-action@v4
with:
branch: main
commit_message: Update CHANGELOG
file_pattern: CHANGELOG.md
2 changes: 2 additions & 0 deletions .github/workflows/ci.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -14,12 +14,14 @@ jobs:
py-version:
- 3.7
- 3.8
- 3.9
mpi: [ 'openmpi' ]
install-options: [ '.', '.[hdf5,netcdf]' ]
pytorch-version:
- 'torch==1.7.1+cpu torchvision==0.8.2+cpu torchaudio==0.7.2'
- 'torch==1.8.1+cpu torchvision==0.9.1+cpu torchaudio==0.8.1'
- 'torch==1.9.0+cpu torchvision==0.10.0+cpu torchaudio==0.9.0'
- 'torch==1.12.0+cpu torchvision==0.13.0+cpu torchaudio==0.12.0'


name: Python ${{ matrix.py-version }} with ${{ matrix.pytorch-version }}; options ${{ matrix.install-options }}
Expand Down
19 changes: 11 additions & 8 deletions .github/workflows/latest-pytorch-support.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,16 +3,19 @@ name: Support latest PyTorch
on:
push:
paths:
- '.github/workflows/pytorch-release-versions/*'
- '.github/pytorch-release-versions/*'
env:
previous_pytorch: $(grep 'torch>=' setup.py | awk -F '<=' '{print $2}' | tr -d '",')
new_pytorch: $(<.github/workflows/pytorch-release-versions/pytorch-latest.txt)
new_pytorch: $(<.github/pytorch-release-versions/pytorch-latest.txt)
permissions:
contents: write
issues: write
pull-requests: write
jobs:
latest-torch-support:
strategy:
matrix:
branches: ['main', 'release/1.2.x']
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
Expand All @@ -30,27 +33,27 @@ jobs:
uses: actions/checkout@v2
with:
token: ${{ secrets.GITHUB_TOKEN }}
ref: 'main'
ref: 'release/1.2.x'
- name: Update setup.py
run: |
echo ${{ env.previous_pytorch }}
echo ${{ env.new_pytorch }}
sed -i '/torch>=/ s/'"${{ env.previous_pytorch }}"'/'"${{ env.new_pytorch }}"'/g' setup.py
sed -i 's/'"${{ env.previous_pytorch }}"'/'"${{ env.new_pytorch }}"'/g' .github/workflows/pytorch-release-versions/pytorch-latest.txt
sed -i 's/'"${{ env.previous_pytorch }}"'/'"${{ env.new_pytorch }}"'/g' .github/pytorch-release-versions/pytorch-latest.txt
- name: Define env variable
run: |
echo "new=$(<.github/workflows/pytorch-release-versions/pytorch-latest.txt)" >> $GITHUB_ENV
echo "new=$(<.github/pytorch-release-versions/pytorch-latest.txt)" >> $GITHUB_ENV
- name: Create PR from branch
uses: peter-evans/create-pull-request@v3
with:
base: main
base: release/1.2.x
delete-branch: true
token: ${{ secrets.GITHUB_TOKEN }}
commit-message: Support latest PyTorch release
title: Support PyTorch ${{ env.new }}
title: Support PyTorch ${{ env.new }} on branch release/1.2.x
body: |
Run tests on latest PyTorch release
Issue/s resolved: #${{ steps.create-issue.outputs.number }}
Auto-generated by [create-pull-request][1]
[1]: https://github.com/peter-evans/create-pull-request
reviewers: ClaudiaComito, mtar, coquelin77
reviewers: ClaudiaComito, mtar, coquelin77, JuanPedroGHM
20 changes: 20 additions & 0 deletions .github/workflows/mirrorci.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
name: Mirror and run GitLab CI

on: [push]

jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v1
- name: Mirror + trigger CI
uses: SvanBoxel/gitlab-mirror-and-ci-action@master
with:
args: "https://gitlab.jsc.fz-juelich.de/haf/heat"
env:
FORCE_PUSH: "false"
GITLAB_HOSTNAME: "gitlab.jsc.fz-juelich.de"
GITLAB_USERNAME: ""
GITLAB_PASSWORD: ${{ secrets.GITLAB_TOKEN }}
GITLAB_PROJECT_ID: "4935"
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
12 changes: 7 additions & 5 deletions .github/workflows/pytorch-latest-release.yml
Original file line number Diff line number Diff line change
@@ -1,26 +1,28 @@
name: Get latest PyTorch release version
on:
schedule:
- cron: '0 5 * * 1-5'
- cron: '25 14 * * 2'
permissions:
contents: write
jobs:
get-version:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
with:
token: ${{ secrets.GITHUB_TOKEN }}
ref: 'main'
token: ${{ secrets.GHACTIONS }}
ref: 'release/1.2.x'
- name: Fetch PyTorch release version
run: |
curl -sL https://api.github.com/repos/pytorch/pytorch/releases/latest | \
jq -r ".tag_name" | tr -d 'v' > .github/workflows/pytorch-release-versions/pytorch-latest.txt
jq -r ".tag_name" | tr -d 'v' > .github/pytorch-release-versions/pytorch-latest.txt
- name: Check for modified files
id: git-check
run: echo ::set-output name=modified::$([ -z "`git status --porcelain`" ] && echo "false" || echo "true")
- name: Commit latest PyTorch release version
if: steps.git-check.outputs.modified == 'true'
run: |
echo "new=$(<.github/workflows/pytorch-release-versions/pytorch-latest.txt)" >> $GITHUB_ENV
echo "new=$(<.github/pytorch-release-versions/pytorch-latest.txt)" >> $GITHUB_ENV
git config --global user.name 'ClaudiaComito'
git config --global user.email '[email protected]@users.noreply.github.com'
git commit -am "New PyTorch release ${{ env.new }}"
Expand Down

This file was deleted.

13 changes: 13 additions & 0 deletions .github/workflows/release-drafter.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
name: Release Drafter

on:
pull_request_target:
types: [closed]

jobs:
update_release_draft:
runs-on: ubuntu-latest
steps:
- uses: release-drafter/release-drafter@v5
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
19 changes: 19 additions & 0 deletions .gitlab-ci.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
test:
image: ubuntu:20.04
tags:
- heat
script:
- apt update
- apt -y install build-essential python3-pip curl
- DEBIAN_FRONTEND=noninteractive apt -y install libopenmpi-dev openmpi-bin openmpi-doc
- apt -y install libhdf5-openmpi-dev libpnetcdf-dev
- pip install pytest coverage
- pip install .[hdf5,netcdf]
- COVERAGE_FILE=report/cov/coverage1 mpirun --allow-run-as-root -n 1 coverage run --source=heat --parallel-mode -m pytest --junitxml=report/test/report1.xml heat/
- COVERAGE_FILE=report/cov/coverage2 mpirun --allow-run-as-root -n 3 coverage run --source=heat --parallel-mode -m pytest --junitxml=report/test/report2.xml heat/
- COVERAGE_FILE=report/cov/coverage5 mpirun --allow-run-as-root -n 5 coverage run --source=heat --parallel-mode -m pytest --junitxml=report/test/report5.xml heat/
- COVERAGE_FILE=report/cov/coverage8 mpirun --allow-run-as-root -n 8 coverage run --source=heat --parallel-mode -m pytest --junitxml=report/test/report8.xml heat/
- coverage combine report/cov/*
- coverage report
- coverage xml
- curl -s https://codecov.io/bash | bash -s -- -c -F unit -f coverage.xml -t $CODECOV_TOKEN || echo "Codecov failed to upload"
2 changes: 1 addition & 1 deletion .pre-commit-config.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ repos:
- id: check-added-large-files
- id: flake8
- repo: https://github.com/psf/black
rev: 22.3.0
rev: 22.6.0
hooks:
- id: black
- repo: https://github.com/pycqa/pydocstyle
Expand Down
46 changes: 0 additions & 46 deletions Jenkinsfile

This file was deleted.

2 changes: 2 additions & 0 deletions contributing.md
Original file line number Diff line number Diff line change
Expand Up @@ -98,6 +98,8 @@ git push origin features/123-boolean-operators

* If your commit introduces a new feature or changes functionality, **please explain your changes and the thinking behind them**. This greatly simplifies the review process. For bug fixes, documentation updates, etc., this is generally not necessary, though if you do not get any reaction, do feel free to ask for review.

* Phrase the PR title as a changelog message and make sure the PR is properly tagged ('enhancement', 'bug', 'ci/cd', 'chore', 'documentation').

#### Review Process

* Reviewers (the other developers and interested community members) will write inline and/or general comments on your Pull Request (PR) to help you improve its implementation, documentation and style. Every single developer working on the project has their code reviewed, and we’ve come to see it as friendly conversation from which we all learn and the overall code quality benefits. Therefore, please don’t let the review discourage you from contributing: its only aim is to improve the quality of project, not to criticize (we are, after all, very grateful for the time you’re donating!).
Expand Down
Loading