Skip to content

Update pre-commit requirement from ^3 to ^4 in the development-dependencies group #201

Update pre-commit requirement from ^3 to ^4 in the development-dependencies group

Update pre-commit requirement from ^3 to ^4 in the development-dependencies group #201

name: Test and Release
on:
push:
branches: ["main"]
pull_request:
branches: ["main"]
workflow_dispatch:
jobs:
changes:
name: Get Changed Content
runs-on: ubuntu-latest
permissions:
pull-requests: read
outputs:
plugin: ${{ steps.filter.outputs.plugin}}
backend: ${{ steps.filter.outputs.backend }}
steps:
- name: Checkout repository
uses: actions/checkout@v4
- uses: dorny/paths-filter@v3
id: filter
with:
filters: |
plugin:
- 'applications/cls-cad-fusion-plugin/**'
backend:
- 'applications/cls-cad-backend/**'
run-tests:
name: Tests
needs: changes
if: ${{ needs.changes.outputs.backend == 'true' }}
uses: tudo-seal/CLS-CAD/.github/workflows/run-tests.yml@main
secrets: inherit
permissions:
checks: write
pull-requests: write
build-msi:
name: Installer
needs: [changes]
if: ${{ needs.changes.outputs.plugin == 'true' }}
uses: tudo-seal/CLS-CAD/.github/workflows/build-publish-installer.yml@main
secrets: inherit
build-container:
name: Container
needs: [changes, run-tests]
if: ${{ needs.changes.outputs.backend == 'true' }}
uses: tudo-seal/CLS-CAD/.github/workflows/build-publish-container.yml@main
permissions:
contents: read
packages: write
secrets: inherit
pre-release:
permissions: write-all
name: Update Latest Release
needs: [run-tests, build-msi, build-container, changes]
if: ${{ always() && !contains(needs.*.result, 'failure') && !contains(needs.*.result, 'cancelled') && needs.changes.outputs.plugin == 'true' }}
runs-on: "ubuntu-latest"
steps:
- name: Checkout repository
uses: actions/checkout@v4
if: github.ref == 'refs/heads/main' && github.event_name != 'pull_request'
- uses: actions/download-artifact@master
with:
name: Fusion Plugin Installer
path: cls-cad-fusion-plugin.msi
if: github.ref == 'refs/heads/main' && github.event_name != 'pull_request'
- uses: "marvinpinto/action-automatic-releases@latest"
with:
repo_token: "${{ secrets.GITHUB_TOKEN }}"
automatic_release_tag: "latest"
prerelease: false
title: "Installer"
files: |
cls-cad-fusion-plugin.msi
if: github.ref == 'refs/heads/main' && github.event_name != 'pull_request'