From 0a1e768dfe8d96d3e26d90042c0bbeddd0c32c21 Mon Sep 17 00:00:00 2001 From: Hein Date: Wed, 8 Apr 2026 15:23:10 +0200 Subject: [PATCH] chore(release): remove Arch package build steps from workflow --- .gitea/workflows/release.yml | 82 ++++++------------------------------ 1 file changed, 13 insertions(+), 69 deletions(-) diff --git a/.gitea/workflows/release.yml b/.gitea/workflows/release.yml index 8f01dbb..7f428e8 100644 --- a/.gitea/workflows/release.yml +++ b/.gitea/workflows/release.yml @@ -92,62 +92,6 @@ jobs: env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - pkg-arch: - needs: release - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v4 - with: - fetch-depth: 0 - - - name: Build Arch package - run: | - VERSION="${{ github.event.inputs.tag || github.ref_name }}" - PKGVER="${VERSION#v}" - - # Source archive — prefix=unitdore-vVERSION/ matches `cd "$pkgname-v$pkgver"` in PKGBUILD - git archive --format=zip --prefix=unitdore-v${PKGVER}/ HEAD \ - > pkg/arch/unitdore-${PKGVER}.zip - SHA=$(sha256sum pkg/arch/unitdore-${PKGVER}.zip | cut -d' ' -f1) - - # Patch PKGBUILD for local build - sed -i \ - -e "s/^pkgver=.*/pkgver=${PKGVER}/" \ - -e "s/^sha256sums=.*/sha256sums=('${SHA}')/" \ - -e "s|source=.*|source=(\"unitdore-\${pkgver}.zip\")|" \ - pkg/arch/PKGBUILD - - mkdir -p pkg/arch/out - docker run --rm \ - -v "$PWD/pkg/arch:/build" \ - -v "$PWD/pkg/arch/out:/out" \ - -w /build \ - archlinux:latest \ - bash -c " - pacman -Syu --noconfirm base-devel go && - useradd -m builder && - chown -R builder:builder /build && - runuser -u builder -- bash -c 'cd /build && makepkg --noconfirm --noprogressbar' && - cp /build/*.pkg.tar.zst /out/ - " - - - name: Upload to release - run: | - TAG="${{ github.event.inputs.tag || github.ref_name }}" - RELEASE=$(curl -s "${GITHUB_API_URL}/repos/${GITHUB_REPOSITORY}/releases/tags/${TAG}" \ - -H "Authorization: token ${GITHUB_TOKEN}") - UPLOAD_URL=$(echo "$RELEASE" | grep -o '"upload_url":"[^"]*"' | cut -d'"' -f4) - for f in pkg/arch/out/*.pkg.tar.zst; do - FNAME=$(basename "$f") - echo "Uploading $FNAME..." - curl -s -X POST "${UPLOAD_URL}?name=${FNAME}" \ - -H "Authorization: token ${GITHUB_TOKEN}" \ - -H "Content-Type: application/octet-stream" \ - --data-binary "@${f}" > /dev/null - done - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - pkg-aur: needs: release runs-on: ubuntu-latest @@ -161,9 +105,9 @@ jobs: VERSION="${{ github.event.inputs.tag || github.ref_name }}" PKGVER="${VERSION#v}" - # Setup SSH for AUR + # Setup SSH for AUR (printf + tr strips Windows line endings that break libcrypto) mkdir -p ~/.ssh - echo "$AUR_SSH_KEY" > ~/.ssh/aur + printf '%s\n' "$AUR_SSH_KEY" | tr -d '\r' > ~/.ssh/aur chmod 600 ~/.ssh/aur ssh-keyscan aur.archlinux.org >> ~/.ssh/known_hosts @@ -179,17 +123,17 @@ jobs: -e "s/^sha256sums=.*/sha256sums=('${SHA}')/" \ pkg/arch/PKGBUILD > aur-repo/PKGBUILD - # Generate .SRCINFO inside an Arch container - docker run --rm \ - -v "$PWD/aur-repo:/build" \ - -w /build \ - archlinux:latest \ - bash -c " - pacman -Sy --noconfirm base-devel && - useradd -m builder && - chown -R builder:builder /build && - runuser -u builder -- bash -c 'cd /build && makepkg --printsrcinfo > .SRCINFO' - " + # Generate .SRCINFO inside an Arch container (docker cp avoids DinD volume mount issues) + CID=$(docker run -d archlinux:latest sleep infinity) + docker cp aur-repo/PKGBUILD $CID:/build/PKGBUILD || (docker exec $CID mkdir -p /build && docker cp aur-repo/PKGBUILD $CID:/build/PKGBUILD) + docker exec $CID bash -c " + pacman -Sy --noconfirm base-devel && + useradd -m builder && + chown -R builder:builder /build && + runuser -u builder -- bash -c 'cd /build && makepkg --printsrcinfo > .SRCINFO' + " + docker cp $CID:/build/.SRCINFO aur-repo/.SRCINFO + docker rm -f $CID # Commit and push to AUR master cd aur-repo