Feature/csvpath (#33) #121
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: Build hydrodiy | |
on: [push] | |
jobs: | |
build-linux: | |
runs-on: ubuntu-latest | |
strategy: | |
max-parallel: 5 | |
defaults: | |
run: | |
shell: bash -l {0} | |
steps: | |
- uses: actions/checkout@v2 | |
- name: Set up Python 3.10 | |
uses: actions/setup-python@v3 | |
with: | |
python-version: '3.10' | |
- name: Add conda to system path | |
run: | | |
# $CONDA is an environment variable pointing to the root of the miniconda directory | |
echo $CONDA/bin >> $GITHUB_PATH | |
- name: Create conda environment if needed | |
run: | | |
source $CONDA/etc/profile.d/conda.sh | |
conda env create -f env_hydrodiy.yml | |
- name : Install hydrodiy package in conda env | |
run: | | |
source $CONDA/etc/profile.d/conda.sh | |
conda activate env_hydrodiy | |
pip install -e . | |
- name: Lint with flake8 | |
run: | | |
source $CONDA/etc/profile.d/conda.sh | |
conda activate env_hydrodiy | |
cd $GITHUB_WORKSPACE | |
flake8 --exclude src/hydrodiy/data/tests src/hydrodiy/data | |
flake8 --exclude src/hydrodiy/gis/tests,src/hydrodiy/gis/data src/hydrodiy/gis | |
flake8 --exclude src/hydrodiy/io/tests,src/hydrodiy/io/script_template_plot.py,src/hydrodiy/io/script_template_simple.py src/hydrodiy/io | |
flake8 --exclude src/hydrodiy/plot/tests src/hydrodiy/plot | |
flake8 --exclude src/hydrodiy/stat/tests,src/hydrodiy/stat/data src/hydrodiy/stat | |
- name: Run tests | |
run: | | |
source $CONDA/etc/profile.d/conda.sh | |
conda activate env_hydrodiy | |
pytest --cov=hydrodiy --cov-config=.coveragerc --junitxml=junit/test-results.xml --cov-report=xml --cov-report=html src/hydrodiy | |
- name: Upload pytest test results | |
uses: actions/upload-artifact@v3 | |
with: | |
name: pytest-results | |
path: junit/test-results.xml | |
# Use always() to always run this step to publish test results when there are test failures | |
if: ${{ always() }} | |
- name: Upload to codecov | |
uses: codecov/codecov-action@v3 | |
- name: Run examples | |
run: | | |
source $CONDA/etc/profile.d/conda.sh | |
conda activate env_hydrodiy | |
python examples/run_all_examples.py | |