name: release run-name: ${{ gitea.actor }} is releasing. on: push: tags: - '*' jobs: docker-release-tag: runs-on: ubuntu-latest steps: - name: docker qemu setup uses: docker/setup-qemu-action@v3 - name: docker buildx setup uses: docker/setup-buildx-action@v3 - name: login to container registry uses: docker/login-action@v3 with: registry: git.hl.srp.life username: ${{ gitea.repository_owner }} password: ${{ secrets.ACTIONS_KEY }} - name: checkout code uses: actions/checkout@v4 - name: build and push to registry uses: docker/build-push-action@v6 with: context: . file: ./Dockerfile platforms: | linux/amd64 linux/arm64 push: true tags: | git.hl.srp.life/${{ gitea.repository }}:${{ gitea.ref_name }} docker-release-latest: if: ${{ ! (endsWith(gitea.ref_name, "-alpha") || endsWith(gitea.ref_name, "-beta") || endsWith(gitea.ref_name, "-rc")) }} runs-on: ubuntu-latest steps: - name: docker qemu setup uses: docker/setup-qemu-action@v3 - name: docker buildx setup uses: docker/setup-buildx-action@v3 - name: login to container registry uses: docker/login-action@v3 with: registry: git.hl.srp.life username: ${{ gitea.repository_owner }} password: ${{ secrets.ACTIONS_KEY }} - name: checkout code uses: actions/checkout@v4 - name: build and push to registry uses: docker/build-push-action@v6 with: context: . file: ./Dockerfile platforms: | linux/amd64 linux/arm64 push: true tags: | git.hl.srp.life/${{ gitea.repository }}:latest go-release-tag: runs-on: ubuntu-latest steps: - name: checkout code uses: actions/checkout@v4 - name: gotta build 'em all uses: thatisuday/go-cross-build@v1 with: platforms: 'linux/amd64, linux/arm64, darwin/amd64, darwin/arm64, freebsd/amd64, netbsd/amd64, openbsd/amd64, windows/amd64' name: bingo package: '' compress: true dest: dist - name: push to go package registry run: | for i in dist/*; do curl --user ${{ gitea.repository_owner }}:${{ secrets.ACTIONS_KEY }} --upload-file $i https://git.hl.srp.life/api/packages/${{ gitea.repository_owner }}/go/upload done - name: publish release uses: https://gitea.com/actions/release-action@main with: files: |- dist/** api_key: ${{ secrets.ACTIONS_KEY }}