diff --git a/.github/ci-hpc-gpu-config.yml b/.github/ci-hpc-gpu-config.yml new file mode 100644 index 000000000..7e18c313c --- /dev/null +++ b/.github/ci-hpc-gpu-config.yml @@ -0,0 +1,26 @@ +build: + modules: + - ninja + dependencies: + - ecmwf/ecbuild@develop + - MathisRosenhauer/libaec@refs/tags/v1.1.3 + - ecmwf/eccodes@develop + - ecmwf/eckit@develop + - ecmwf/odc@develop + python_dependencies: + - ecmwf/eccodes-python@develop + - ecmwf/cfgrib@master + - ecmwf/pdbufr@master + - ecmwf/pyodc@develop + env: + - ECCODES_SAMPLES_PATH=$ECCODES_DIR/share/eccodes/samples + - ECCODES_DEFINITION_PATH=$ECCODES_DIR/share/eccodes/definitions + parallel: 64 + queue: ng + gpus: 1 + toml_opt_dep_sections: all,test,ci + pytest_cmd: | + python -m pytest -vv -m 'not notebook and not no_cache_init' --cov=. --cov-report=xml + #python -m pytest -v -m 'notebook' + #python -m pytest --forked -vv -m 'no_cache_init' + #python -m coverage report diff --git a/.github/workflows/nightly-hpc-gpu.yml b/.github/workflows/nightly-hpc-gpu.yml new file mode 100644 index 000000000..9c4f26de6 --- /dev/null +++ b/.github/workflows/nightly-hpc-gpu.yml @@ -0,0 +1,21 @@ +name: nightly-hpc-gpu + +on: + workflow_dispatch: + + # Run at 04:00 UTC every day (on default branch) + schedule: + - cron: "0 04 * * *" + +jobs: + test-hpc-gpu: + runs-on: [self-hosted, linux, hpc] + steps: + - uses: ecmwf/reusable-workflows/ci-hpc@v2 + with: + github_user: ${{ secrets.BUILD_PACKAGE_HPC_GITHUB_USER }} + github_token: ${{ secrets.GH_REPO_READ_TOKEN }} + troika_user: ${{ secrets.HPC_CI_TESTING_SSH_USER }} + repository: ecmwf/earthkit-data@${{ github.event.pull_request.head.sha || github.sha }} + build_config: .github/ci-hpc-gpu-config.yml + python_version: "3.10"