From cb7257ed6f9d64cbb1e2fb427cb0eea1e4d7d6c7 Mon Sep 17 00:00:00 2001 From: lawrence Date: Tue, 24 Feb 2026 10:33:21 +0000 Subject: [PATCH] Update .gitea/workflows/release.yml --- .gitea/workflows/release.yml | 138 ++++++++++++++++++----------------- 1 file changed, 72 insertions(+), 66 deletions(-) diff --git a/.gitea/workflows/release.yml b/.gitea/workflows/release.yml index ebe563b..4ea82a7 100644 --- a/.gitea/workflows/release.yml +++ b/.gitea/workflows/release.yml @@ -7,9 +7,18 @@ on: tags: - 'v*' +permissions: + contents: write + packages: write + jobs: release: runs-on: ubuntu-latest + + env: + OWNER: ${{ github.repository_owner }} + REPO: ${{ github.event.repository.name }} + steps: - name: Checkout uses: actions/checkout@v4 @@ -49,16 +58,17 @@ jobs: run: | cargo deb -p relay --no-build cargo deb -p client --no-build - mkdir -p dist - cp target/debian/*.deb dist/ + cp target/debian/*.deb dist/ || true - name: Build rpm packages run: | cargo rpm build -p relay --release cargo rpm build -p client --release - mkdir -p dist find target/release/rpmbuild/RPMS -name "*.rpm" -exec cp {} dist/ \; + # ------------------------------------------------- + # FIXED: Generic package upload (Gitea correct API) + # ------------------------------------------------- - name: Publish generic packages env: TOKEN: ${{ secrets.TOKEN }} @@ -67,17 +77,21 @@ jobs: echo "TOKEN missing; skipping generic packages" exit 0 fi - OWNER="${GITHUB_REPOSITORY%/*}" - REPO="${GITHUB_REPOSITORY#*/}" + VERSION="${{ steps.version.outputs.version }}" + for file in dist/*; do name=$(basename "$file") curl -sSf -X PUT \ -H "Authorization: token ${TOKEN}" \ - --upload-file "$file" \ + -H "Content-Type: application/octet-stream" \ + --data-binary @"$file" \ "${GITHUB_SERVER_URL}/api/packages/${OWNER}/generic/${REPO}/${VERSION}/${name}" done + # ------------------------------------------------- + # OCI Images (fixed repo casing issue) + # ------------------------------------------------- - name: Build and push OCI images env: TOKEN: ${{ secrets.TOKEN }} @@ -87,65 +101,74 @@ jobs: echo "TOKEN or USERNAME missing; skipping OCI" exit 0 fi + VERSION="${{ steps.version.outputs.version }}" + IMAGE_BASE="git.dvv.one/${OWNER}/${REPO}" + echo "${TOKEN}" | docker login git.dvv.one -u "${USERNAME}" --password-stdin - printf '%s\n' \ - 'FROM debian:bookworm-slim' \ - 'COPY target/release/relay /usr/local/bin/relay' \ - 'EXPOSE 7000 7001 25565' \ - 'ENTRYPOINT ["/usr/local/bin/relay"]' \ - > Dockerfile.relay + cat > Dockerfile.relay < Dockerfile.client + cat > Dockerfile.client < ~/.cargo/config.toml <