diff --git a/.github/workflows/nightly.yaml b/.github/workflows/next.yaml similarity index 69% rename from .github/workflows/nightly.yaml rename to .github/workflows/next.yaml index 8205b27..f77a1f8 100644 --- a/.github/workflows/nightly.yaml +++ b/.github/workflows/next.yaml @@ -1,11 +1,11 @@ -name: Nightly +name: Pre-release (next) on: - schedule: - - cron: "0 8 * * *" workflow_dispatch: + pull_request: + types: [opened, synchronize, reopened] concurrency: - group: publish-nightly-${{ github.ref }} + group: pre-release-${{ github.ref }} cancel-in-progress: true permissions: @@ -15,12 +15,22 @@ permissions: jobs: publish: - name: docker-publish + # Ensure the action only runs if manually dispatched or a PR on the `next` branch in the *main* repository is opened or synchronized. + if: ${{ github.event_name == 'workflow_dispatch' || (github.event.pull_request && github.event.pull_request.head.repo.full_name == github.repository && github.event.pull_request.head.ref == 'next') }} + name: Docker Pre-release runs-on: ubuntu-latest steps: - name: Check out the repo uses: actions/checkout@v4 + - name: Docker Metadata + id: meta + uses: docker/metadata-action@v5 + with: + images: ghcr.io/${{ github.repository }} + tags: | + type=raw,value=next + - name: Set up QEMU uses: docker/setup-qemu-action@v3 @@ -34,14 +44,6 @@ jobs: username: ${{ github.actor }} password: ${{ secrets.GITHUB_TOKEN }} - - name: Docker Metadata - id: meta - uses: docker/metadata-action@v5 - with: - images: ghcr.io/${{ github.repository }} - tags: | - type=edge,branch=main - - name: Build and push Docker image uses: docker/build-push-action@v5 with: diff --git a/.github/workflows/release.yaml b/.github/workflows/release.yaml index a79166f..04bff84 100644 --- a/.github/workflows/release.yaml +++ b/.github/workflows/release.yaml @@ -5,7 +5,7 @@ on: - "*" concurrency: - group: publish-${{ github.ref }} + group: release-${{ github.ref }} cancel-in-progress: true permissions: @@ -14,13 +14,21 @@ permissions: packages: write # Write access to the container registry jobs: - publish: - name: docker-publish + docker: + name: Docker Release runs-on: ubuntu-latest steps: - name: Check out the repo uses: actions/checkout@v4 + - name: Docker Metadata + id: meta + uses: docker/metadata-action@v5 + with: + images: ghcr.io/${{ github.repository }} + tags: | + type=semver,pattern={{version}} + - name: Set up QEMU uses: docker/setup-qemu-action@v3 @@ -34,16 +42,6 @@ jobs: username: ${{ github.actor }} password: ${{ secrets.GITHUB_TOKEN }} - - name: Docker Metadata - id: meta - uses: docker/metadata-action@v5 - with: - images: ghcr.io/${{ github.repository }} - tags: | - type=semver,pattern={{version}} - type=semver,pattern={{major}}.{{minor}} - type=raw,value=latest,enable=false - - name: Build and push Docker image uses: docker/build-push-action@v5 with: