Skip to content
This repository has been archived by the owner on Apr 15, 2024. It is now read-only.

Merge pull request #74 from catalyst-cooperative/blocking-metrics #349

Merge pull request #74 from catalyst-cooperative/blocking-metrics

Merge pull request #74 from catalyst-cooperative/blocking-metrics #349

Workflow file for this run

name: tox-pytest
on: [push, pull_request]
env:
PUDL_OUTPUT: ~/pudl-work/output/
PUDL_INPUT: ~/pudl-work/data/
jobs:
ci-test:
runs-on: ubuntu-latest
strategy:
fail-fast: false
steps:
- uses: actions/checkout@v3
with:
fetch-depth: 2
- name: Set up conda environment for testing
uses: conda-incubator/[email protected]
with:
miniforge-variant: Mambaforge
miniforge-version: latest
use-mamba: true
mamba-version: "*"
channels: conda-forge,defaults
channel-priority: true
python-version: "3.11"
activate-environment: ferc1_eia_match
environment-file: environment.yml
- shell: bash -l {0}
run: |
conda info
conda list
conda config --show-sources
conda config --show
printenv | sort
- name: Get Date
id: get-date
run: |
echo "date=$(/bin/date -u "+%Y%m%d")" >> $GITHUB_OUTPUT
shell: bash
- name: Cache PUDL DB
id: cache-db
uses: actions/[email protected]
with:
path: ~/pudl-work/output/pudl.sqlite
key: ${{ steps.get-date.outputs.date }}
- name: Download PUDL DB and log pre-test PUDL workspace contents
if: steps.cache-db.outputs.cache-hit != 'true'
run: |
mkdir -p ~/pudl-work/output/
curl -o ~/pudl-work/output/pudl.sqlite http://intake.catalyst.coop.s3.amazonaws.com/dev/pudl.sqlite
find ~/pudl-work/
- name: Log SQLite3 version
run: |
conda run -n ferc1_eia_match which sqlite3
conda run -n ferc1_eia_match sqlite3 --version
- name: Run PyTest with Tox
run: |
conda run -n ferc1_eia_match tox
- name: Upload test coverage report to CodeCov
uses: codecov/[email protected]
ci-notify:
runs-on: ubuntu-latest
needs: ci-test
if: ${{ always() }}
steps:
- name: Inform the Codemonkeys
uses: 8398a7/action-slack@v3
with:
status: custom
fields: workflow,job,commit,repo,ref,author,took
custom_payload: |
{
username: 'action-slack',
icon_emoji: ':octocat:',
attachments: [{
color: '${{ needs.ci-test.result }}' === 'success' ? 'good' : '${{ needs.ci-test.result }}' === 'failure' ? 'danger' : 'warning',
text: `${process.env.AS_REPO}@${process.env.AS_REF}\n ${process.env.AS_WORKFLOW} (${process.env.AS_COMMIT})\n by ${process.env.AS_AUTHOR}\n Status: ${{ needs.ci-test.result }}`,
}]
}
env:
GITHUB_TOKEN: ${{ github.token }} # required
SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }} # required
MATRIX_CONTEXT: ${{ toJson(matrix) }} # required