Bump actions/download-artifact from 2 to 4.1.7 in /.github/workflows #100
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
# ----------------------- | |
# | |
# Run a full build-and-test from the git repo | |
# using a combination of conda and pip to install | |
# all optional dependencies. | |
# | |
# This is the 'full' test suite. | |
# | |
# ----------------------- | |
name: Build and test | |
on: | |
push: | |
branches: | |
- master | |
pull_request: | |
branches: | |
- master | |
jobs: | |
test: | |
name: Python ${{ matrix.python-version }} (${{ matrix.os }}) | |
strategy: | |
fail-fast: false | |
matrix: | |
os: | |
- macOS | |
- Ubuntu | |
python-version: | |
- 3.6 | |
- 3.7 | |
- 3.8 | |
- 3.9 | |
runs-on: ${{ matrix.os }}-latest | |
steps: | |
- name: Get source code | |
uses: actions/checkout@v2 | |
with: | |
fetch-depth: 0 | |
- name: Set up Python ${{ matrix.python-version }} | |
uses: actions/setup-python@v2 | |
with: | |
python-version: ${{ matrix.python-version }} | |
- name: Install upstream requirements | |
if: startsWith(matrix.os, 'ubuntu') | |
run: | | |
sudo apt-get -y -q install \ | |
libkrb5-dev \ | |
; | |
- name: Install requirements | |
run: | | |
python -m pip install --quiet --upgrade pip wheel | |
# install requirements | |
python -m pip install -r requirements.txt | |
# install LAL (for glue) | |
python -m pip install lalsuite | |
# install test-only requirements | |
python -m pip install pytest pytest-cov | |
- name: Install DQSegDB | |
run: python -m pip install --editable . --no-build-isolation -vv | |
- name: Package list | |
run: python -m pip list installed | |
- name: Run pytest suite | |
run: python -m pytest -ra --pyargs dqsegdb.tests --cov dqsegdb --cov-report= --junitxml=pytest.xml | |
- name: Run command line tests | |
run: | | |
for script in ${{ env.pythonLocation }}/bin/*_dqsegdb; do | |
python -m coverage run \ | |
--append \ | |
--source=dqsegdb \ | |
${script} --help | |
done | |
- name: Coverage report | |
run: python -m coverage report --show-missing | |
- name: Prepare codecov upload | |
run: | | |
# covert report to XML (codecov can't handle sqlite, probably) | |
python -m coverage xml | |
rm -fv .coverage | |
- name: Publish coverage to Codecov | |
uses: codecov/codecov-action@v2 | |
with: | |
flags: ${{ runner.os }},python${{ matrix.python-version }} | |
- name: Upload test results | |
if: always() | |
uses: actions/upload-artifact@v2 | |
with: | |
name: pytest-${{ matrix.os }}-${{ matrix.python-version }} | |
path: pytest.xml |