create cache path when missing #211
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: Build | |
env: | |
RCLONE: ${{ secrets.RCLONE }} | |
on: | |
push: | |
jobs: | |
check-pre-commit: | |
name: Check pre-commit hooks | |
runs-on: ubuntu-latest | |
steps: | |
- name: Check pre-commit hooks | |
uses: quintenroets/actions/validate/pre-commit@main | |
verify-packaging: | |
name: Verify packaging | |
runs-on: ubuntu-latest | |
steps: | |
- name: Verify packaging | |
uses: quintenroets/actions/validate/package@main | |
extract-python-versions: | |
name: Extract Python versions | |
runs-on: ubuntu-latest | |
outputs: | |
versions: ${{ steps.extract-python-versions.outputs.versions }} | |
steps: | |
- name: Extract Python versions | |
id: extract-python-versions | |
uses: quintenroets/actions/setup/extract-python-versions@main | |
run-tests: | |
name: Run tests | |
needs: extract-python-versions | |
strategy: | |
matrix: | |
os: [ubuntu-latest] | |
python-version: ${{ fromJSON(needs.extract-python-versions.outputs.versions) }} | |
runs-on: ${{ matrix.os }} | |
steps: | |
- name: Run tests | |
uses: quintenroets/actions/validate/tests@main | |
with: | |
python-version: ${{ matrix.python-version }} | |
publish: | |
name: Publish package | |
runs-on: ubuntu-latest | |
if: github.ref == 'refs/heads/main' | |
needs: [check-pre-commit, verify-packaging, run-tests] | |
environment: release | |
permissions: | |
id-token: write # Needed for PyPi publishing | |
contents: write # Needed for GitHub publishing | |
steps: | |
- name: Publish | |
uses: quintenroets/actions/publish@main | |
trigger-template-sync: | |
name: Trigger template sync | |
runs-on: ubuntu-latest | |
if: github.repository == 'quintenroets/python-package-template' && github.ref == 'refs/heads/main' | |
needs: [check-pre-commit, verify-packaging, run-tests] | |
steps: | |
- name: Trigger template sync | |
uses: quintenroets/actions/trigger-template-sync@main | |
with: | |
token: ${{ secrets.TEMPLATE_SYNC_TRIGGER }} |