ci: add PR testing workflow and auto-update package manager configs on release
CI / test (push) Failing after 10m48s Details

This commit is contained in:
刘焱 2026-06-02 08:52:33 +08:00
parent 9598142c2f
commit 8d3d6cc5ce
2 changed files with 55 additions and 0 deletions

20
.github/workflows/ci.yml vendored Normal file
View File

@ -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" .

View File

@ -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}