switched gitHub workflow to use miniforge #39
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Run tests with miniforge | |
on: [push] | |
# jobs: | |
# example-10-miniforge: | |
# name: Ex10 (${{ matrix.os }}, Miniforge) | |
# runs-on: ${{ matrix.os }}-latest | |
# strategy: | |
# matrix: | |
# os: ["ubuntu", "macos", "windows"] | |
# steps: | |
# - uses: actions/checkout@v4 | |
# - uses: conda-incubator/setup-miniconda@v3 | |
# with: | |
# environment-file: etc/example-environment.yml | |
# miniforge-version: latest | |
jobs: | |
test: | |
name: Miniforge tests ${{ matrix.os }} Py${{ matrix.pyver }} | |
runs-on: ${{ matrix.os }}-latest | |
strategy: | |
matrix: | |
os: ["ubuntu", "windows","macos"] | |
# os: ["windows-latest","macos-latest"] | |
pyver: ["3.9", "3.10", "3.11", "3.12"] | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: conda-incubator/setup-miniconda@v3 | |
with: | |
activate-environment: test | |
miniforge-version: latest | |
# environment-file: environment.yml | |
python-version: ${{ matrix.pyver }} | |
auto-activate-base: false | |
# - shell: bash -l {0} | |
# run: | | |
# conda config --add channels conda-forge | |
- name: Setup environment | |
shell: bash -l {0} | |
run: | | |
cd ./py_gnome | |
echo "Setting up conda environment" | |
conda install -y python=${{ matrix.pyver }} \ | |
--file conda_requirements.txt \ | |
--file conda_requirements_build.txt \ | |
--file conda_requirements_test.txt \ | |
- name: Build Our Packages | |
shell: bash -l {0} | |
run: | | |
cd ./py_gnome | |
python -m pip install ./ | |
- name: Run pytest | |
shell: bash -l {0} | |
run: | | |
cd ./py_gnome/tests/unit_tests | |
pytest --runslow | |
- name: Build wheel file | |
shell: bash -l {0} | |
run: | | |
cd ./py_gnome | |
python -m pip wheel ./ | |
- name: Copy files to artifact folder | |
shell: bash -l {0} | |
run: | | |
mkdir installable_wheel_${{ matrix.os }}_Py${{ matrix.pyver }} | |
cp ./py_gnome/*.whl installable_wheel_${{ matrix.os }}_Py${{ matrix.pyver }} | |
cp ./py_gnome/conda_requirements.txt installable_wheel_${{ matrix.os }}_Py${{ matrix.pyver }} | |
- name: Upload Artifact | |
uses: actions/upload-artifact@v4 | |
with: | |
name: installable-wheel-${{ matrix.os }}-Py${{ matrix.pyver }} | |
path: installable_wheel_${{ matrix.os }}_Py${{ matrix.pyver }} | |
lint: | |
name: Flake8 linting | |
runs-on: "ubuntu-latest" | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: conda-incubator/setup-miniconda@v3 | |
with: | |
activate-environment: lint | |
python-version: 3.12 | |
auto-activate-base: false | |
- shell: bash -l {0} | |
run: | | |
conda config --add channels conda-forge | |
- name: Lint | |
shell: bash -l {0} | |
run: | | |
conda install flake8 | |
python -m flake8 --exit-zero --statistics py_gnome/gnome/ |