name: Beta Release on: workflow_dispatch: inputs: alpha: description: "Beta version (e.g. 1, 2, 3)" required: true jobs: get-tag: runs-on: ubuntu-latest outputs: tag: ${{ steps.tag.outputs.name }} steps: - name: Checkout code uses: actions/checkout@v4 - name: Get tag id: tag run: echo "name=$(cat internal/assets/version)-beta.${{ github.event.inputs.alpha }}" >> $GITHUB_OUTPUT build-docker: needs: get-tag runs-on: ubuntu-latest steps: - name: Checkout uses: actions/checkout@v4 - name: Set up QEMU uses: docker/setup-qemu-action@v3 - name: Set up Docker Buildx uses: docker/setup-buildx-action@v3 - name: Login to GitHub Container Registry uses: docker/login-action@v3 with: registry: ghcr.io username: ${{ github.repository_owner }} password: ${{ secrets.GITHUB_TOKEN }} - name: Build and push uses: docker/build-push-action@v6 with: context: . push: true platforms: linux/arm64, linux/amd64 tags: ghcr.io/${{ github.repository_owner }}/tinyauth:${{ needs.get-tag.outputs.tag }} beta-release: needs: [get-tag, build-docker] runs-on: ubuntu-latest steps: - name: Create beta release uses: softprops/action-gh-release@v2 with: prerelease: true tag_name: ${{ needs.get-tag.outputs.tag }}