From 8537131cd056f8a42e0b5193f8c1935905e9f062 Mon Sep 17 00:00:00 2001 From: Erica Marigold Date: Tue, 12 Nov 2024 20:49:55 +0530 Subject: [PATCH] chore(actions): include pesde package publishing action --- .github/workflows/publish.yml | 45 +++++++++++++++++++++++++++++++++++ 1 file changed, 45 insertions(+) create mode 100644 .github/workflows/publish.yml diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml new file mode 100644 index 0000000..e86f670 --- /dev/null +++ b/.github/workflows/publish.yml @@ -0,0 +1,45 @@ +name: Publish + +on: + push: + tags: + - "v*" + +jobs: + publish: + runs-on: ubuntu-latest + steps: + - name: Checkout + uses: actions/checkout@v4 + + - name: Get version from tag + id: get_version + run: echo "VERSION=${GITHUB_REF#refs/tags/v}" >> $GITHUB_OUTPUT + + - name: Download pesde + run: | + # Figure out the latest release + latest_release=$(curl -s https://api.github.com/repos/daimond113/pesde/releases | jq '[.[] | select(.prerelease == true or .prerelease == false)][0]') + download_url=$(echo "$latest_release" | jq -r '.assets[] | select(.name | endswith("linux-x86_64.tar.gz")) | .browser_download_url') + + # Download and extract the linux-x86_64 artifact + curl -L -o /tmp/pesde.tar.gz "$download_url" + tar -xzvf /tmp/pesde.tar.gz + chmod +x pesde + + # Install, cleanup and set PATH + ./pesde self-install + rm ./pesde + echo "$HOME/.pesde/bin" >> $GITHUB_PATH + + - name: Authenticate into pesde registry + run: | + echo '[tokens]' > $HOME/.pesde/config.toml + echo '"https://github.com/daimond113/pesde-index.git" = "${{ secrets.PESDE_TOKEN }}"' >> $HOME/.pesde/config.toml + + - name: Update version + run: | + sed -i "s/version = .*/version = \"${{ steps.get_version.outputs.VERSION }}\"/" pesde.toml + + - name: Publish + run: pesde publish --dry-run