From 51ad3c35fc70ef49dffa3d8ea05ed6bca6651cdd Mon Sep 17 00:00:00 2001 From: Sandro Loch Date: Mon, 4 Dec 2023 10:37:06 -0300 Subject: [PATCH] feat(ci): update workflow to support Python 3.10 and 3.11 --- .github/workflows/python-package.yml | 96 +++++++++++++++------------- 1 file changed, 53 insertions(+), 43 deletions(-) diff --git a/.github/workflows/python-package.yml b/.github/workflows/python-package.yml index 95c2309..3b4ab88 100644 --- a/.github/workflows/python-package.yml +++ b/.github/workflows/python-package.yml @@ -1,53 +1,63 @@ -name: maketests +name: main on: [push, pull_request] + jobs: - build: + tests: runs-on: ubuntu-latest - timeout-minutes: 60 + timeout-minutes: 10 + + defaults: + run: + shell: bash -l {0} + strategy: matrix: - python-version: - - '3.9' + python_version: ["3.10", "3.11"] + concurrency: - group: 'ci-${{ github.ref }}' + group: ci-tests-${{ matrix.python_version }}-${{ github.ref }} cancel-in-progress: true - defaults: - run: - shell: 'bash -l {0}' steps: - - uses: actions/checkout@v2 - - uses: conda-incubator/setup-miniconda@v2 - with: - miniconda-version: latest - mamba-version: '*' - environment-file: conda/dev.yaml - channels: 'conda-forge,nodefaults' - activate-environment: pysus - use-mamba: true - miniforge-variant: Mambaforge - - - name: Install dependencies - run: | - curl -sSL https://install.python-poetry.org/ | python - - export PATH="$HOME/.poetry/bin:$PATH" - poetry config virtualenvs.create false - - - name: Install main dependencies - run: | - make conda-install-main ENVCREATE=conda-env - - - name: Lint with flake8 - run: | - make conda-install-dev - make check-codestyle - - - name: Run jupyterlab with PySUS - run: | - make run-jupyter-pysus - - - name: Test with pytest - run: | - make conda-install-geo - make test-pysus + - uses: actions/checkout@v3 + + - name: Prepare conda environment + run: | + sed -i s/python\ 3\.11/python\ ${{ matrix.python_version }}/ conda/dev.yaml + cat conda/dev.yaml + + - uses: conda-incubator/setup-miniconda@v2 + with: + miniconda-version: "latest" + mamba-version: "*" + environment-file: conda/dev.yaml + channels: conda-forge,nodefaults + activate-environment: pysus + use-mamba: true + miniforge-variant: Mambaforge + + + - name: Install dependencies + run: | + curl -sSL https://install.python-poetry.org/ | python - + export PATH="$HOME/.poetry/bin:$PATH" + poetry config virtualenvs.create false + + - name: Install main dependencies + run: | + make conda-install-main ENVCREATE=conda-env + + - name: Lint with flake8 + run: | + make conda-install-dev + make check-codestyle + + - name: Run jupyterlab with PySUS + run: | + make run-jupyter-pysus + + - name: Test with pytest + run: | + make conda-install-geo + make test-pysus