Skip to content

Commit

Permalink
Updated container for Github Action and reusable workflow - Redo (#89)
Browse files Browse the repository at this point in the history
* test

* tet

* fix test dir

* test

* checkout pace

* rename

* test

* rm

* remove dir

* fix name

* test

* pyshield

* test

* fix trigger mistake

* test

* change lint version

* remove push

* lint

---------

Co-authored-by: mlee03 <[email protected]>
  • Loading branch information
mlee03 and mlee03 authored Jun 26, 2024
1 parent 392aa2d commit 777b332
Show file tree
Hide file tree
Showing 3 changed files with 84 additions and 32 deletions.
4 changes: 2 additions & 2 deletions .github/workflows/lint.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,10 +11,10 @@ jobs:
uses: actions/[email protected]
with:
submodules: 'recursive'
- name: Step Python 3.11.9
- name: Step Python 3.11.7
uses: actions/[email protected]
with:
python-version: '3.11.9'
python-version: '3.11.7'
- name: Install OpenMPI for gt4py
run: |
sudo apt-get install libopenmpi-dev
Expand Down
82 changes: 82 additions & 0 deletions .github/workflows/main_unit_tests.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,82 @@
name: "Pace main unit tests"
on:
workflow_call:
inputs:
ndsl_trigger:
type: boolean
default: false
required: false
fv3_trigger:
type: boolean
default: false
required: false
shield_trigger:
type: boolean
default: false
required: false
pull_request:
types: [opened, synchronize, reopened, ready_for_review, labeled, unlabeled]


# cancel running jobs if theres a newer push
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true

env:
github_repository: ${{github.event.repository.name}}

jobs:
main_unit_tests:
runs-on: ubuntu-latest
container:
image: ghcr.io/noaa-gfdl/miniforge:mpich
steps:
- name: Checkout pace if externally triggered
if: ${{ inputs.fv3_trigger || inputs.ndsl_trigger || inputs.shield_trigger }}
uses: actions/checkout@v4
with:
submodules: 'recursive'
repository: NOAA-GFDL/pace
path: pace

- name: Checkout repo that triggered the workflow
uses: actions/checkout@v4
with:
submodules: 'recursive'
path: ${{ env.github_repository }}

- name: mv PyFV3 to pace
if: ${{inputs.fv3_trigger}}
run: |
rm -r ${GITHUB_WORKSPACE}/pace/pyFV3
mv ${GITHUB_WORKSPACE}/${{env.github_repository}} ${GITHUB_WORKSPACE}/pace/pyFV3
- name: mv NDSL to pace
if: ${{inputs.ndsl_trigger}}
run: |
rm -r ${GITHUB_WORKSPACE}/pace/NDSL
mv ${GITHUB_WORKSPACE}/${{env.github_repository}} ${GITHUB_WORKSPACE}/pace/NDSL
- name: mv pyShield to pace
if: ${{inputs.shield_trigger}}
run: |
rm -r ${GITHUB_WORKSPACE}/pace/pySHiELD
mv ${GITHUB_WORKSPACE}/${{env.github_repository}} ${GITHUB_WORKSPACE}/pace/pySHiELD
- name: install packages
run: |
cd ${GITHUB_WORKSPACE}/pace
pip3 install --upgrade pip setuptools wheel
pip3 install -r requirements_dev.txt -c constraints.txt
- name: prepare input files
run: |
cd ${GITHUB_WORKSPACE}/pace
python3 examples/generate_eta_files.py
mkdir tests/main/input && mv eta*.nc tests/main/input/.
- name: run tests
run: |
cd ${GITHUB_WORKSPACE}/pace
pytest -x tests/main
30 changes: 0 additions & 30 deletions .github/workflows/main_unit_tests_mpich.yaml

This file was deleted.

0 comments on commit 777b332

Please sign in to comment.