fix: CI don't replace live binary, pass build path to ISO script
Remove the cp to /usr/local/bin that caused 'Text file busy'. The ISO build script now accepts ARCHIPELAGO_BIN env var to find the freshly built binary instead of requiring it installed. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
parent
b2168751db
commit
9e39614ecb
@ -19,22 +19,16 @@ jobs:
|
|||||||
run: |
|
run: |
|
||||||
source $HOME/.cargo/env 2>/dev/null || true
|
source $HOME/.cargo/env 2>/dev/null || true
|
||||||
cargo build --release --manifest-path core/Cargo.toml
|
cargo build --release --manifest-path core/Cargo.toml
|
||||||
sudo rm -f /usr/local/bin/archipelago
|
|
||||||
sudo cp core/target/release/archipelago /usr/local/bin/archipelago
|
|
||||||
sudo systemctl restart archipelago 2>/dev/null || true
|
|
||||||
|
|
||||||
- name: Build frontend
|
- name: Build frontend
|
||||||
run: |
|
run: cd neode-ui && npm ci && npm run build
|
||||||
echo "PWD: $(pwd)"
|
|
||||||
ls -la neode-ui/package.json || echo "neode-ui/package.json NOT FOUND"
|
|
||||||
cd neode-ui
|
|
||||||
npm ci
|
|
||||||
npm run build
|
|
||||||
|
|
||||||
- name: Build unbundled ISO
|
- name: Build unbundled ISO
|
||||||
run: |
|
run: |
|
||||||
cd image-recipe
|
cd image-recipe
|
||||||
sudo UNBUNDLED=1 DEV_SERVER=localhost BUILD_FROM_SOURCE=0 ./build-auto-installer-iso.sh
|
sudo UNBUNDLED=1 DEV_SERVER=localhost BUILD_FROM_SOURCE=0 \
|
||||||
|
ARCHIPELAGO_BIN=../core/target/release/archipelago \
|
||||||
|
./build-auto-installer-iso.sh
|
||||||
|
|
||||||
- name: Copy to Builds
|
- name: Copy to Builds
|
||||||
run: |
|
run: |
|
||||||
|
|||||||
@ -508,9 +508,10 @@ fi
|
|||||||
# Try to get from live server first (unless BUILD_FROM_SOURCE=1)
|
# Try to get from live server first (unless BUILD_FROM_SOURCE=1)
|
||||||
BACKEND_CAPTURED=0
|
BACKEND_CAPTURED=0
|
||||||
if [ "$BUILD_FROM_SOURCE" != "1" ]; then
|
if [ "$BUILD_FROM_SOURCE" != "1" ]; then
|
||||||
# Direct copy from local filesystem (when running on target with sudo)
|
# Direct copy from ARCHIPELAGO_BIN env, local install, or remote
|
||||||
if [ -f "/usr/local/bin/archipelago" ]; then
|
local BIN="${ARCHIPELAGO_BIN:-/usr/local/bin/archipelago}"
|
||||||
cp "/usr/local/bin/archipelago" "$ARCH_DIR/bin/archipelago"
|
if [ -f "$BIN" ]; then
|
||||||
|
cp "$BIN" "$ARCH_DIR/bin/archipelago"
|
||||||
chmod +x "$ARCH_DIR/bin/archipelago"
|
chmod +x "$ARCH_DIR/bin/archipelago"
|
||||||
echo " ✅ Backend captured from local system ($(du -h "$ARCH_DIR/bin/archipelago" | cut -f1))"
|
echo " ✅ Backend captured from local system ($(du -h "$ARCH_DIR/bin/archipelago" | cut -f1))"
|
||||||
BACKEND_CAPTURED=1
|
BACKEND_CAPTURED=1
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user