diff --git a/.github/workflows/docker.yml b/.github/workflows/docker.yml index 359e10a..11c691f 100644 --- a/.github/workflows/docker.yml +++ b/.github/workflows/docker.yml @@ -4,6 +4,7 @@ on: push: branches: - main + - chore/path-filter release: types: - published @@ -13,7 +14,34 @@ env: IMAGE_NAME: ${{ github.repository }} jobs: + changes: + name: detect what files changed + runs-on: ubuntu-latest + permissions: + pull-requests: read + outputs: + server: ${{ steps.filter.outputs.server }} + chart: ${{ steps.filter.outputs.chart }} + CR: ${{ steps.filter.outputs.CR }} + web: ${{ steps.filter.outputs.web }} + steps: + - uses: actions/checkout@v4 + - uses: dorny/paths-filter@v3 + id: filter + with: + filters: | + server: + - 'server/**' + chart: + - 'chart/**' + CR: + - 'collecy-currency/**' + web: + - 'web/**' + build-and-push-server: + needs: changes + if: ${{ needs.changes.outputs.server == 'true' }} runs-on: ubuntu-latest permissions: contents: read @@ -50,6 +78,8 @@ jobs: platforms: linux/amd64,linux/arm64 build-and-push-chart: + needs: changes + if: ${{ needs.changes.outputs.chart == 'true' }} runs-on: ubuntu-latest permissions: contents: read @@ -87,6 +117,8 @@ jobs: build-and-push-CR: + needs: changes + if: ${{ needs.changes.outputs.CR == 'true' }} runs-on: ubuntu-latest permissions: contents: read diff --git a/.github/workflows/documentation.yml b/.github/workflows/documentation.yml index 2cd9840..d631cf6 100644 --- a/.github/workflows/documentation.yml +++ b/.github/workflows/documentation.yml @@ -1,13 +1,35 @@ -name: Deploy docs +name: Deploy docs + on: push: branches: - master - main + permissions: contents: write + jobs: + changes: + name: detect what files changed + runs-on: ubuntu-latest + permissions: + pull-requests: read + outputs: + docs: ${{ steps.filter.outputs.docs }} + steps: + - uses: actions/checkout@v4 + - uses: dorny/paths-filter@v3 + id: filter + with: + filters: | + docs: + - 'docs/**' + - 'mkdocs.yml' + deploy: + needs: changes + if: ${{ needs.changes.outputs.docs == 'true' }} runs-on: ubuntu-latest steps: - uses: actions/checkout@v4