diff --git a/.github/workflows/aur_upload.yml b/.github/workflows/aur_upload.yml new file mode 100644 index 0000000..a105385 --- /dev/null +++ b/.github/workflows/aur_upload.yml @@ -0,0 +1,40 @@ +name: Upload AUR + +on: [push] +#on: +# release: +# types: [created] + +jobs: + build: + runs-on: ubuntu-latest + steps: + - name: Checkout Code + uses: actions/checkout@v4 + - name: generate PKGBUILD + run: | + cp scripts/ci/PKGBUILD . + PACKAGE_NAME=$(grep '^name =' Cargo.toml | sed 's/name = "\(.*\)"/\1/') + VERSION=$(grep '^version =' Cargo.toml | sed 's/version = "\(.*\)"/\1/') + MAINTAINER=$(grep '^authors =' Cargo.toml | sed 's/authors = \[\s*"\(.*\)\s*"\]/\1/') + DESCRIPTION=$(grep '^description =' Cargo.toml | sed 's/description = "\(.*\)"/\1/') + sed -i "1i # Maintainer: ${MAINTAINER}" PKGBUILD + sed -i "s/^pkgname=.*/pkgname=${PACKAGE_NAME}/" PKGBUILD + sed -i "s/^pkgver=.*/pkgver=${VERSION}/" PKGBUILD + sed -i "s/^pkgdesc=.*/pkgdesc='${DESCRIPTION}'/" PKGBUILD + echo "VERSION=${VERSION}" >> $GITHUB_ENV + echo "PKG_NAME=${PACKAGE_NAME}" >> $GITHUB_ENV + - name: Validate package + uses: heyhusen/archlinux-package-action@v2 + with: + updpkgsums: true + srcinfo: true + - name: Publish AUR package + uses: KSXGitHub/github-actions-deploy-aur@v3 + with: + pkgname: ${{ env.PKG_NAME }} + pkgbuild: ./PKGBUILD + commit_username: 'Github automation' + commit_email: 'noreply@turingpi.com' + ssh_private_key: ${{ secrets.AUR_DEPLOY_KEY }} + commit_message: Update package to ${{ env.VERSION }} diff --git a/scripts/ci/PKGBUILD b/scripts/ci/PKGBUILD new file mode 100644 index 0000000..a7a5056 --- /dev/null +++ b/scripts/ci/PKGBUILD @@ -0,0 +1,13 @@ +pkgname= +pkgver= +pkgrel=1 +pkgdesc= +url=https://turingpi.com/ +license=('Apache') +arch=('x86_64' 'aarch64') +source_x86_64=("https://github.com/turing-machines/tpi/releases/download/${pkgver}/tpi-x86_64-unknown-linux-gnu.tar.gz") +source_aarch64=("https://github.com/turing-machines/tpi/releases/download/${pkgver}/tpi-aarch64-unknown-linux-gnu.tar.gz") + +package() { + tar -xzf "${srcdir}/tpi-${CARCH}-unknown-linux-gnu.tar.gz" -C "${pkgdir}" +}