fix(release): fix VSCode pnpm, RPM docker mount, and AUR empty repo
- VSCode: switch from npm ci to pnpm (project uses pnpm-lock.yaml) - RPM: replace docker create+cp with docker run --rm -v mount to avoid missing /build directory in rockylinux:9 - AUR: guard PKGBUILD reads with -f check so first publish to an empty AUR repo defaults pkgrel to 1 instead of crashing Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -166,7 +166,9 @@ jobs:
|
|||||||
|
|
||||||
sed -i "s/^Version:.*/Version: ${PKGVER}/" linux/centos/pgtidy.spec
|
sed -i "s/^Version:.*/Version: ${PKGVER}/" linux/centos/pgtidy.spec
|
||||||
|
|
||||||
CID=$(docker create \
|
mkdir -p rpm-out
|
||||||
|
docker run --rm \
|
||||||
|
-v "$(pwd):/build" \
|
||||||
-e GO_VER="${GO_VER}" \
|
-e GO_VER="${GO_VER}" \
|
||||||
-e PKGVER="${PKGVER}" \
|
-e PKGVER="${PKGVER}" \
|
||||||
-w /build \
|
-w /build \
|
||||||
@@ -179,19 +181,9 @@ jobs:
|
|||||||
mkdir -p ~/rpmbuild/{BUILD,BUILDROOT,RPMS,SOURCES,SPECS,SRPMS} &&
|
mkdir -p ~/rpmbuild/{BUILD,BUILDROOT,RPMS,SOURCES,SPECS,SRPMS} &&
|
||||||
cp pgtidy-${PKGVER}.tar.gz ~/rpmbuild/SOURCES/ &&
|
cp pgtidy-${PKGVER}.tar.gz ~/rpmbuild/SOURCES/ &&
|
||||||
cp linux/centos/pgtidy.spec ~/rpmbuild/SPECS/ &&
|
cp linux/centos/pgtidy.spec ~/rpmbuild/SPECS/ &&
|
||||||
rpmbuild --nodeps -ba ~/rpmbuild/SPECS/pgtidy.spec
|
rpmbuild --nodeps -ba ~/rpmbuild/SPECS/pgtidy.spec &&
|
||||||
")
|
find ~/rpmbuild/RPMS/ -name '*.rpm' -exec cp {} /build/rpm-out/ \;
|
||||||
|
"
|
||||||
cleanup() { docker rm -f "$CID" >/dev/null 2>&1 || true; }
|
|
||||||
trap cleanup EXIT
|
|
||||||
|
|
||||||
docker cp pgtidy-${PKGVER}.tar.gz "$CID:/build/"
|
|
||||||
docker cp linux "$CID:/build/linux"
|
|
||||||
docker start -a "$CID"
|
|
||||||
mkdir -p rpm-out
|
|
||||||
docker cp "$CID:/root/rpmbuild/RPMS/." rpm-out/
|
|
||||||
|
|
||||||
trap - EXIT; cleanup
|
|
||||||
|
|
||||||
- name: Upload to release
|
- name: Upload to release
|
||||||
run: |
|
run: |
|
||||||
@@ -258,8 +250,13 @@ jobs:
|
|||||||
GIT_SSH_COMMAND="ssh -o IdentitiesOnly=yes -o StrictHostKeyChecking=yes -o UserKnownHostsFile=$AUR_KNOWN_HOSTS -i $AUR_KEY_PATH" \
|
GIT_SSH_COMMAND="ssh -o IdentitiesOnly=yes -o StrictHostKeyChecking=yes -o UserKnownHostsFile=$AUR_KNOWN_HOSTS -i $AUR_KEY_PATH" \
|
||||||
git clone ssh://aur@aur.archlinux.org/pgtidy-bin.git aur-repo
|
git clone ssh://aur@aur.archlinux.org/pgtidy-bin.git aur-repo
|
||||||
|
|
||||||
|
if [ -f aur-repo/PKGBUILD ]; then
|
||||||
CURRENT_PKGVER=$(awk -F= '/^pkgver=/ {print $2; exit}' aur-repo/PKGBUILD | tr -d "[:space:]")
|
CURRENT_PKGVER=$(awk -F= '/^pkgver=/ {print $2; exit}' aur-repo/PKGBUILD | tr -d "[:space:]")
|
||||||
CURRENT_PKGREL=$(awk -F= '/^pkgrel=/ {print $2; exit}' aur-repo/PKGBUILD | tr -d "[:space:]")
|
CURRENT_PKGREL=$(awk -F= '/^pkgrel=/ {print $2; exit}' aur-repo/PKGBUILD | tr -d "[:space:]")
|
||||||
|
else
|
||||||
|
CURRENT_PKGVER=""
|
||||||
|
CURRENT_PKGREL=0
|
||||||
|
fi
|
||||||
|
|
||||||
if [ "$CURRENT_PKGVER" = "$PKGVER" ]; then
|
if [ "$CURRENT_PKGVER" = "$PKGVER" ]; then
|
||||||
PKGREL=$((CURRENT_PKGREL + 1))
|
PKGREL=$((CURRENT_PKGREL + 1))
|
||||||
@@ -313,12 +310,16 @@ jobs:
|
|||||||
with:
|
with:
|
||||||
node-version: '20'
|
node-version: '20'
|
||||||
|
|
||||||
|
- uses: pnpm/action-setup@v4
|
||||||
|
with:
|
||||||
|
version: latest
|
||||||
|
|
||||||
- name: Install and package
|
- name: Install and package
|
||||||
working-directory: editors/vscode
|
working-directory: editors/vscode
|
||||||
run: |
|
run: |
|
||||||
npm ci
|
pnpm install --frozen-lockfile
|
||||||
npm run compile
|
pnpm run compile
|
||||||
npm run package
|
pnpm run package
|
||||||
|
|
||||||
- name: Upload to release
|
- name: Upload to release
|
||||||
run: |
|
run: |
|
||||||
|
|||||||
Reference in New Issue
Block a user