chore(main): release 0.17.5 #476
Workflow file for this run
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: CI | |
on: | |
push: | |
branches: | |
- main | |
pull_request: | |
branches: | |
- main | |
jobs: | |
Formatting: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout repository | |
uses: actions/checkout@v4 | |
- name: Install stable toolchain | |
uses: dtolnay/rust-toolchain@stable | |
with: | |
components: rustfmt | |
- name: Check format | |
run: cargo fmt --check | |
Linting: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout repository | |
uses: actions/checkout@v4 | |
with: | |
lfs: true | |
- name: Install stable toolchain | |
uses: dtolnay/rust-toolchain@stable | |
with: | |
components: clippy | |
- name: Lint with clippy | |
run: cargo clippy --no-deps # --all-targets --all-features | |
Testing: | |
needs: [Formatting, Linting] | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: | |
include: | |
- label: fast | |
- label: full | |
services: | |
# The tests need a postgres server; the data will be loaded later | |
# after checkout. | |
postgres: | |
image: postgres | |
env: | |
POSTGRES_DB: uta | |
POSTGRES_USER: uta_admin | |
POSTGRES_PASSWORD: uta_admin | |
options: >- | |
--health-cmd pg_isready | |
--health-interval 10s | |
--health-timeout 5s | |
--health-retries 5 | |
ports: | |
- 5432:5432 | |
steps: | |
- name: Checkout repository | |
uses: actions/checkout@v4 | |
with: | |
lfs: 'true' | |
- name: Install host libraries | |
run: sudo apt-get install -y libsqlite3-dev libsqlite3-0 | |
- name: Import test database. | |
run: | | |
set -euo pipefail | |
zcat tests/data/data/uta_20210129-subset.pgd.gz \ | |
| psql -v ON_ERROR_STOP=1 -U uta_admin -h 0.0.0.0 -d uta | |
shell: bash | |
env: | |
PGPASSWORD: uta_admin | |
- name: Install stable toolchain | |
uses: dtolnay/rust-toolchain@stable | |
with: | |
components: llvm-tools-preview # needed for cargo llvm-cov | |
- uses: Swatinem/[email protected] | |
- name: Install cargo-llvm-cov | |
uses: taiki-e/install-action@cargo-llvm-cov | |
- name: Run cargo-llvm-cov with fast tests | |
run: cargo llvm-cov --lcov --output-path lcov.info -- --test-threads 1 | |
env: | |
TEST_UTA_DATABASE_URL: postgres://uta_admin:[email protected]/uta | |
TEST_UTA_DATABASE_SCHEMA: uta_20210129 | |
TEST_SEQREPO_CACHE_MODE: read | |
TEST_SEQREPO_CACHE_PATH: tests/data/seqrepo_cache.fasta | |
if: ${{ matrix.label == 'fast' }} | |
- name: Run cargo-test with full tests | |
run: "cargo test --release -- --include-ignored" | |
env: | |
TEST_UTA_DATABASE_URL: postgres://uta_admin:[email protected]/uta | |
TEST_UTA_DATABASE_SCHEMA: uta_20210129 | |
TEST_SEQREPO_CACHE_MODE: read | |
TEST_SEQREPO_CACHE_PATH: tests/data/seqrepo_cache.fasta | |
if: ${{ matrix.label == 'full' }} | |
- name: Codecov submission of fast test results | |
uses: codecov/codecov-action@v5 | |
with: | |
verbose: true | |
token: ${{ secrets.CODECOV_TOKEN }} | |
if: ${{ matrix.label == 'fast' }} |