Files
cli/.gitea/workflows/build.yml
T
elordenador 786af380ba
Build / build_arch (push) Successful in 30s
Build / publish-release (push) Successful in 1m30s
Remove environment preparation step for curl in publish-release job
2026-05-13 13:31:28 +02:00

73 lines
2.4 KiB
YAML

name: Build
on: [push]
permissions:
contents: write
jobs:
build_arch:
runs-on: archlinux
steps:
- name: Checkout Current Repo
uses: actions/checkout@v4
- name: Clone External Repository
run: |
git clone https://git.elordenador.org/RedSocial/cli_archpkg.git external
chown -R builder:builder external
- name: Makepkg
run: |
cd external && makepkg -s --noconfirm
- name: Extract package version
id: pkg_version
run: |
PKGFILE=$(ls external/*.pkg.tar.zst)
PKGVERSION=$(basename "$PKGFILE" | sed 's/^rscli-git-\(r[^ ]*\)-.*$/\1/')
echo "PKGVERSION=$PKGVERSION" >> $GITHUB_ENV
echo "version=$PKGVERSION" >> $GITHUB_OUTPUT
- name: Upload Artifact
uses: actions/upload-artifact@v3
with:
name: arch-package
path: external/*.pkg.tar.zst
publish-release:
runs-on: ubuntu-26.04
needs: build_arch
steps:
- name: Checkout Current Repo
uses: actions/checkout@v4
- name: Download Artifact
uses: actions/download-artifact@v3
with:
name: arch-package
path: ./dist
- name: Create Git Tag
run: |
VERSION=$(ls dist/*.pkg.tar.zst | sed 's/^rscli-git-\(r[^ ]*\)-.*$/\1/')
git tag "$VERSION"
git push origin "$VERSION"
echo "VERSION=$VERSION" >> $GITHUB_ENV
- name: Create Gitea Release
env:
GITEA_TOKEN: ${{ secrets.GITHUB_TOKEN }}
TAG: ${{ env.VERSION }}
run: |
PACKAGE_FILE=$(ls dist/*.pkg.tar.zst)
FILE_NAME=$(basename "$PACKAGE_FILE")
RELEASE_JSON=$(curl -s -X POST "https://git.elordenador.org/api/v1/repos/RedSocial/cli/releases" \
-H "Authorization: token $GITEA_TOKEN" \
-H "Content-Type: application/json" \
-d "{
\"tag_name\": \"$TAG\",
\"name\": \"Release $TAG\",
\"draft\": false,
\"prerelease\": false
}")
RELEASE_ID=$(echo "$RELEASE_JSON" | grep -o '"id":[0-9]*' | head -1 | cut -d':' -f2)
curl -X POST "https://git.elordenador.org/api/v1/repos/RedSocial/cli/releases/$RELEASE_ID/assets?name=$FILE_NAME" \
-H "Authorization: token $GITEA_TOKEN" \
--data-binary "@$PACKAGE_FILE"