From 753e9c84cd7821c5db0257f62f5bf2a1afc258a6 Mon Sep 17 00:00:00 2001 From: Kristofers Solo Date: Thu, 16 Jan 2025 17:42:18 +0200 Subject: [PATCH] fix: CI/CD --- .github/workflows/publish.yml | 43 ++++++++++++++++++++++++++--------- Cargo.lock | 2 +- Cargo.toml | 2 +- 3 files changed, 34 insertions(+), 13 deletions(-) diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml index 15b6254..5145bb6 100644 --- a/.github/workflows/publish.yml +++ b/.github/workflows/publish.yml @@ -108,26 +108,47 @@ jobs: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 + - name: Get version and description + id: metadata + run: | + DESCRIPTION=$(cargo metadata --format-version=1 --no-deps | jq -r '.packages[0].description') + VERSION=$(cargo metadata --format-version=1 --no-deps | jq -r '.packages[0].version') + echo "VERSION=${VERSION}" >> $GITHUB_OUTPUT + echo "DESCRIPTION=${DESCRIPTION}" >> $GITHUB_OUTPUT + - name: Get SHA256 sum + id: sha256 + run: | + curl -LO "${{ github.server_url }}/${{ github.repository }}/releases/download/v${{ steps.get_version.outputs.VERSION }}/sula-alus-x86_64-unknown-linux-gnu.tar.gz" + echo "SHA256=$(sha256sum sula-alus-x86_64-unknown-linux-gnu.tar.gz | cut -d' ' -f1)" >> $GITHUB_OUTPUT - name: Generate PKGBUILD run: | cat > PKGBUILD << 'EOF' # Maintainer: Kristofers Solo pkgname=sula-alus-bin - pkgver=${GITHUB_REF#refs/tags/v} + pkgver=${{ steps.metadata.outputs.VERSION }} pkgrel=1 - pkgdesc="A CLI tool to reverse strings" - arch=('x86_64') - url="https://github.com/$GITHUB_REPOSITORY" - license=('MIT', 'Apache-2.0') - provides=('sula-alus') - conflicts=('sula-alus') - source=("$url/releases/download/v$pkgver/sula-alus-x86_64-unknown-linux-gnu.tar.gz") - sha256sums=('SKIP') + pkgdesc="${{ steps.metadata.outputs.DESCRIPTION }}" + arch=("x86_64") + url="https://github.com/kristoferssolo/sula-alus" + license=("MIT" "Apache-2.0") + provides=("sula-alus") + conflicts=("sula-alus" "sula-alus-git") + source=("\${url}/releases/download/v\${pkgver}/sula-alus-x86_64-unknown-linux-gnu.tar.gz") + EOF + - name: Update SHA256 and package function + run: | + echo "sha256sums=(\"${{ steps.sha256.outputs.SHA256 }}\")" >> PKGBUILD + echo >> PKGBUILD + cat >> PKGBUILD << 'EOF' package() { - install -Dm755 sula-alus "$pkgdir/usr/bin/sula-alus" + cd "$srcdir/" + install -Dm755 sula-alus "${pkgdir}/usr/bin/sula-alus" } EOF + - name: Generate .SRCINFO + run: | + docker run --rm -v "$PWD":/pkg -w /pkg archlinux:base-devel bash -c 'pacman -Sy --noconfirm base-devel && su nobody -c "makepkg --printsrcinfo" > .SRCINFO' - name: Publish AUR package uses: KSXGitHub/github-actions-deploy-aur@v3.0.1 with: @@ -136,5 +157,5 @@ jobs: commit_username: ${{ secrets.AUR_USERNAME }} commit_email: ${{ secrets.AUR_EMAIL }} ssh_private_key: ${{ secrets.AUR_SSH_PRIVATE_KEY }} - commit_message: "Update to version ${GITHUB_REF#refs/tags/v}" + commit_message: "Update to version ${{ steps.metadata.outputs.VERSION }}" ssh_keyscan_types: rsa,ecdsa,ed25519 diff --git a/Cargo.lock b/Cargo.lock index baeb94a..cba68af 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -142,7 +142,7 @@ checksum = "7da8b5736845d9f2fcb837ea5d9e2628564b3b043a70948a3f0b778838c5fb4f" [[package]] name = "sula-alus" -version = "0.1.3" +version = "0.1.4" dependencies = [ "clap", ] diff --git a/Cargo.toml b/Cargo.toml index 2d9f1fb..8c3e952 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,7 +1,7 @@ [package] name = "sula-alus" authors = ["Kristofers Solo "] -version = "0.1.3" +version = "0.1.4" edition = "2021" description = "A CLI tool to encode strings and files using Sula-Alus encoding" repository = "https://github.com/kristoferssolo/sula-alus"