Skip to content

Retain state

Retain state #74

Workflow file for this run

name: Pull Requests
on:
pull_request:
branches:
- main
jobs:
version-check:
name: Version Check
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Check All Versions Match
run: |
pkg_version=$(grep -P -o 'version = "\d+\.\d+\.\d+"' pyproject.toml | grep -P -o '\d+\.\d+\.\d+')
rock_version=$(grep -P -o 'version: "\d+\.\d+\.\d+"' rockcraft.yaml | grep -P -o '\d+\.\d+\.\d+')
rock_pkg_version=$(grep -P -o 'cos-alerter==\d+\.\d+\.\d+' rockcraft.yaml | grep -P -o '\d+\.\d+\.\d+')
[ "${pkg_version}" == "${rock_version}" ]
[ "${rock_version}" == "${rock_pkg_version}" ]
changelog-check:
name: Changelog Check
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v3
with:
fetch-depth: 0
- name: Check for Change to Changelog.md
id: changed-files
uses: tj-actions/changed-files@v35
with:
files: CHANGELOG.md
- name: Fail If No Change
run: |
[ "${{ steps.changed-files.outputs.any_changed }}" == "true" ]
linting:
name: Linting
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Set Up Python
uses: actions/setup-python@v4
- name: Install Dependencies
run: python3 -m pip install tox
- name: Run Checks
run: tox -e lint,static
tests:
name: Tests
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Set Up Python
uses: actions/setup-python@v4
- name: Install Dependencies
run: python3 -m pip install tox
- name: Run Checks
run: tox -e test,slow-tests
- name: Upload .coverage
uses: actions/upload-artifact@v3
with:
name: coverage
path: .coverage
coverage:
name: Coverage
needs: tests
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Set Up Python
uses: actions/setup-python@v4
- name: Install Dependencies
run: python3 -m pip install tox
- name: Download .coverage
uses: actions/download-artifact@v3
with:
name: coverage
- name: Run Checks
run: tox -e coverage