mirror of
https://github.com/router-for-me/CLIProxyAPI.git
synced 2026-06-23 06:25:51 +08:00
chore(build): add caching for Go dependencies and FreeBSD-specific artifacts in release workflow
This commit is contained in:
35
.github/workflows/release.yaml
vendored
35
.github/workflows/release.yaml
vendored
@@ -73,6 +73,15 @@ jobs:
|
||||
with:
|
||||
go-version: ${{ env.GO_VERSION }}
|
||||
cache: true
|
||||
- uses: actions/cache@v4
|
||||
with:
|
||||
path: |
|
||||
~/.cache/go-build
|
||||
~/go/pkg/mod
|
||||
key: go-${{ runner.os }}-${{ runner.arch }}-${{ matrix.target }}-${{ hashFiles('go.sum') }}
|
||||
restore-keys: |
|
||||
go-${{ runner.os }}-${{ runner.arch }}-${{ matrix.target }}-
|
||||
go-${{ runner.os }}-${{ runner.arch }}-
|
||||
- name: Generate Build Metadata
|
||||
shell: bash
|
||||
run: |
|
||||
@@ -143,6 +152,16 @@ jobs:
|
||||
git show FETCH_HEAD:models.json > internal/registry/models/models.json
|
||||
- name: Fetch tags
|
||||
run: git fetch --force --tags
|
||||
- uses: actions/cache@v4
|
||||
with:
|
||||
path: |
|
||||
.freebsd-cache/${{ matrix.goarch }}/go
|
||||
.freebsd-cache/${{ matrix.goarch }}/gocache
|
||||
.freebsd-cache/${{ matrix.goarch }}/gomodcache
|
||||
key: freebsd-${{ matrix.goarch }}-go${{ env.GO_VERSION }}-${{ hashFiles('go.sum') }}
|
||||
restore-keys: |
|
||||
freebsd-${{ matrix.goarch }}-go${{ env.GO_VERSION }}-
|
||||
freebsd-${{ matrix.goarch }}-
|
||||
- name: Generate Build Metadata
|
||||
run: |
|
||||
echo "RELEASE_VERSION=${GITHUB_REF_NAME#v}" >> $GITHUB_ENV
|
||||
@@ -162,10 +181,18 @@ jobs:
|
||||
shell: cpa.sh {0}
|
||||
run: |
|
||||
set -eu
|
||||
fetch -o /tmp/go.tar.gz "https://go.dev/dl/go${GO_VERSION}.freebsd-${GOARCH}.tar.gz"
|
||||
rm -rf /tmp/go
|
||||
tar -C /tmp -xzf /tmp/go.tar.gz
|
||||
export PATH="/tmp/go/bin:$PATH"
|
||||
cache_root=".freebsd-cache/${GOARCH}"
|
||||
go_root="${cache_root}/go"
|
||||
mkdir -p "${cache_root}/gocache" "${cache_root}/gomodcache"
|
||||
if [ ! -x "${go_root}/bin/go" ]; then
|
||||
fetch -o /tmp/go.tar.gz "https://go.dev/dl/go${GO_VERSION}.freebsd-${GOARCH}.tar.gz"
|
||||
rm -rf "$go_root"
|
||||
mkdir -p "$cache_root"
|
||||
tar -C "$cache_root" -xzf /tmp/go.tar.gz
|
||||
fi
|
||||
export GOCACHE="$PWD/${cache_root}/gocache"
|
||||
export GOMODCACHE="$PWD/${cache_root}/gomodcache"
|
||||
export PATH="$PWD/${go_root}/bin:$PATH"
|
||||
go version
|
||||
|
||||
archive_dir="dist/${TARGET}/archive"
|
||||
|
||||
Reference in New Issue
Block a user