Merge pull request #1138 from OSOceanAcoustics/dev #1
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: windows-build | |
on: | |
push: | |
branches: | |
- dev | |
- main | |
paths-ignore: [".ci_helpers/docker/**", "**/docker.yaml"] | |
workflow_dispatch: | |
env: | |
CONDA_ENV: echopype | |
jobs: | |
windows-test: | |
name: windows-${{ matrix.python-version }}-build | |
runs-on: "windows-latest" | |
continue-on-error: ${{ matrix.experimental }} | |
strategy: | |
fail-fast: false | |
matrix: | |
include: | |
- python-version: 3.9 | |
experimental: false | |
defaults: | |
run: | |
shell: powershell | |
services: | |
# TODO: figure out how to update tag when there's a new one | |
minio: | |
image: cormorack/minioci:latest | |
ports: | |
- 9000:9000 | |
httpserver: | |
image: cormorack/http:latest | |
ports: | |
- 8080:80 | |
steps: | |
- name: Checkout repo | |
uses: actions/checkout@v3 | |
- name: Copying test data to http server | |
run: | | |
rm .\echopype\test_data -r -fo | |
docker cp -L ${{ job.services.httpserver.id }}:/usr/local/apache2/htdocs/data .\echopype\test_data | |
# Check data endpoint | |
curl http://localhost:8080/data/ | |
- name: Setup Python | |
uses: actions/[email protected] | |
with: | |
python-version: ${{ matrix.python-version }} | |
architecture: x64 | |
- name: Cache conda | |
uses: actions/[email protected] | |
env: | |
# Increase this value to reset cache if '.ci_helpers/py{0}.yaml' has not changed | |
CACHE_NUMBER: 0 | |
with: | |
path: ~/conda_pkgs_dir | |
key: ${{ runner.os }}-conda-${{ env.CACHE_NUMBER }}-${{ hashFiles(format('.ci_helpers/py{0}.yaml', matrix.python-version)) }} | |
- name: Setup miniconda | |
uses: conda-incubator/setup-miniconda@v2 | |
with: | |
activate-environment: ${{ env.CONDA_ENV }} | |
environment-file: .ci_helpers/py${{ matrix.python-version }}.yaml | |
miniforge-variant: Mambaforge | |
miniforge-version: 4.11.0-0 | |
use-mamba: true | |
auto-activate-base: false | |
use-only-tar-bz2: true | |
- name: Print conda env | |
run: | | |
conda info | |
conda list | |
- name: Install dev tools | |
run: | | |
mamba install -c conda-forge --yes --file requirements-dev.txt | |
- name: Install echopype | |
run: | | |
python -m pip install -e .[plot] | |
- name: Running all Tests | |
run: | | |
pytest -vvv -rx --numprocesses=4 --cov=echopype --cov-report=xml --log-cli-level=WARNING --disable-warnings |& tee ci_${{ matrix.python-version }}_test_log.log |