name: CI on: push: branches: - main - v[0-9]+ jobs: check: name: Check uses: ./.github/workflows/check.yaml secrets: CACHIX_AUTH_TOKEN: ${{ secrets.CACHIX_AUTH_TOKEN }} docs: name: Docs uses: ./.github/workflows/docs.yaml secrets: CACHIX_AUTH_TOKEN: ${{ secrets.CACHIX_AUTH_TOKEN }} test: name: Test uses: ./.github/workflows/test.yaml secrets: CACHIX_AUTH_TOKEN: ${{ secrets.CACHIX_AUTH_TOKEN }} CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }} build: name: Build uses: ./.github/workflows/build.yaml secrets: CACHIX_AUTH_TOKEN: ${{ secrets.CACHIX_AUTH_TOKEN }} tag: name: Tag concurrency: # Never tag outdated commits on the main branch by skipping superseded commits group: ci-tag-${{ (github.ref == 'refs/heads/main' && github.ref) || github.run_id }} # TODO: Enable this once https://github.com/orgs/community/discussions/13015 is solved cancel-in-progress: false if: vars.RELEASE_ENABLED runs-on: ubuntu-24.04 needs: - docs - test - build steps: - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0 with: ssh-key: ${{ secrets.POSTGREST_SSH_KEY }} - name: Tag latest commit run: | cabal_version="$(grep -oP '^version:\s*\K.*' postgrest.cabal)" if [[ "$cabal_version" == *.*.*.* ]]; then git fetch --tags if [ -z "$(git tag --list "v$cabal_version")" ]; then git tag "v$cabal_version" git push origin "v$cabal_version" fi else git tag -f "devel" git push -f origin "devel" fi