sintonia/.github/workflows/_python.yml
Jonas L e320ce204e
ci: reduce usage (#1804)
* ci: move analyzer jobs in a dedicated workflow

* ci: move worker jobs in a dedicated workflow

* ci: move legacy jobs in a dedicated workflow

* ci: move shared jobs in a dedicated workflow

* ci: move api-client jobs to dedicated workflow

* ci: remove unused test job

* ci: move api jobs in a dedicated workflow

* ci: move playout ci jobs in a dedicated workflow

* ci: remove unused test job

* ci: move test-with-database in api workflow

* ci: run playout on api-client changes

* ci: rename tools workflow to dev-tools

* ci: rename generic tests workflow to project

* ci: rename lint-pr workflow to pr

* ci: update python tests concurrency

* ci: update python caching keys

* ci: update website/docs trigger condition

* ci: update legacy trigger condition

* ci: readd cancel in progress

* ci :update api cache key
2022-04-25 15:27:10 +02:00

75 lines
1.7 KiB
YAML

on:
workflow_call:
inputs:
context:
required: true
type: string
lint:
required: false
default: true
type: boolean
test:
required: false
default: true
type: boolean
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
jobs:
lint:
if: inputs.lint
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: actions/setup-python@v3
- uses: actions/cache@v3
with:
path: ~/.cache/pip
key: ${{ runner.os }}-pip-${{ inputs.context }}-${{ hashFiles(format('{0}/{1}', inputs.context, '**/setup.py')) }}
restore-keys: |
${{ runner.os }}-pip-${{ inputs.context }}
- name: Add annotations matchers
run: |
echo "::add-matcher::.github/annotations/pylint.json"
- name: Lint
run: make lint
working-directory: ${{ inputs.context }}
test:
if: inputs.test
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
release:
- buster
- bullseye
- bionic
- focal
- jammy
container: ghcr.io/libretime/libretime-dev:${{ matrix.release }}
defaults:
run:
shell: bash
steps:
- uses: actions/checkout@v3
- uses: actions/cache@v3
with:
path: ~/.cache/pip
key: ${{ runner.os }}-pip-${{ inputs.context }}-${{ hashFiles(format('{0}/{1}', inputs.context, '**/setup.py')) }}
restore-keys: |
${{ runner.os }}-pip-${{ inputs.context }}
- name: Test
run: make test
working-directory: ${{ inputs.context }}