diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml new file mode 100644 index 0000000..7036de0 --- /dev/null +++ b/.github/workflows/ci.yml @@ -0,0 +1,20 @@ +name: CI +on: + push: + branches: [master] + pull_request: + branches: [master] +jobs: + test: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - uses: actions/setup-go@v5 + with: + go-version-file: 'go.mod' + - name: Vet + run: go vet ./... + - name: Test + run: go test ./... + - name: Build + run: go build -ldflags "-s -w" . diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index dfb1095..55fe22c 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -72,6 +72,41 @@ jobs: dist/checksums-sha256.txt generate_release_notes: true + - name: Update Scoop manifest + run: | + VERSION=${GITHUB_REF#refs/tags/v} + cd dist + + # Parse SHA256 hashes from checksums file + declare -A HASHES + while read -r hash file; do + HASHES["$file"]="$hash" + done < checksums-sha256.txt + + # Update bucket/gitlink-cli.json + cd .. + SCOOP_FILE="bucket/gitlink-cli.json" + if [ -f "$SCOOP_FILE" ]; then + # Update version + sed -i "s/\"version\": \".*\"/\"version\": \"${VERSION}\"/" "$SCOOP_FILE" + + # Update amd64 hash and URL + AMD64_FILE="gitlink-cli_${VERSION}_windows_amd64.zip" + if [ -n "${HASHES[$AMD64_FILE]}" ]; then + sed -i "/64bit/,/}/ s|\"url\": \".*\"|\"url\": \"https://github.com/gitlink-org/gitlink-cli/releases/download/v${VERSION}/${AMD64_FILE}\"|" "$SCOOP_FILE" + sed -i "/64bit/,/}/ s|\"hash\": \".*\"|\"hash\": \"${HASHES[$AMD64_FILE]}\"|" "$SCOOP_FILE" + fi + + # Update arm64 hash and URL + ARM64_FILE="gitlink-cli_${VERSION}_windows_arm64.zip" + if [ -n "${HASHES[$ARM64_FILE]}" ]; then + sed -i "/arm64/,/}/ s|\"url\": \".*\"|\"url\": \"https://github.com/gitlink-org/gitlink-cli/releases/download/v${VERSION}/${ARM64_FILE}\"|" "$SCOOP_FILE" + sed -i "/arm64/,/}/ s|\"hash\": \".*\"|\"hash\": \"${HASHES[$ARM64_FILE]}\"|" "$SCOOP_FILE" + fi + + echo "Updated $SCOOP_FILE for version $VERSION" + fi + - name: Build npm package run: | VERSION=${GITHUB_REF#refs/tags/v}