Updated Jenkinsfile to build Linux version using 'yarn build:linux'. Refactored package.json to separate server and renderer build processes, and added new build:linux script. Cleaned up after-install.sh and after-remove.sh scripts by removing service file handling.
Some checks failed
farmcontrol/farmcontrol-server/pipeline/head There was a failure building this commit
Some checks failed
farmcontrol/farmcontrol-server/pipeline/head There was a failure building this commit
This commit is contained in:
parent
d98140491f
commit
6539f6e2ff
2
Jenkinsfile
vendored
2
Jenkinsfile
vendored
@ -48,7 +48,7 @@ try {
|
||||
parallel(
|
||||
'Windows Build': buildOnLabel('windows', 'yarn build:electron'),
|
||||
'MacOS Build': buildOnLabel('macos', 'yarn build:electron'),
|
||||
'Linux Build': buildOnLabel('ubuntu', 'yarn build:electron')
|
||||
'Linux Build': buildOnLabel('ubuntu', 'yarn build:linux')
|
||||
)
|
||||
|
||||
echo 'All parallel stages completed successfully!'
|
||||
|
||||
33
package.json
33
package.json
@ -8,9 +8,12 @@
|
||||
"start": "node build/index.js",
|
||||
"dev": "cross-env NODE_ENV=development nodemon src/index.js",
|
||||
"dev:electron": "concurrently \"cross-env NODE_ENV=development vite src/electron --port 5287 --no-open\" \"cross-env NODE_ENV=development electron src/index.js\"",
|
||||
"build": "yarn clean && mkdir build && cp -r src/* build/ && cp package.json config.json build/ && yarn build:electron-renderer && cp src/electron/preload.js build/electron/ && rm -rf build/electron/App.jsx build/electron/main.jsx build/electron/App.css build/electron/index.css build/electron/FarmControlLogo.jsx build/electron/vite.config.js build/electron/public build/electron/build",
|
||||
"build": "yarn clean && yarn build:server && yarn build:renderer",
|
||||
"build:server": "mkdir -p build && cp -r src/* build/ && cp package.json config.json build/",
|
||||
"build:renderer": "yarn build:electron-renderer && cp src/electron/preload.js build/electron/ && rm -rf build/electron/App.jsx build/electron/main.jsx build/electron/App.css build/electron/index.css build/electron/FarmControlLogo.jsx build/electron/vite.config.js build/electron/public build/electron/build",
|
||||
"build:electron-renderer": "vite build src/electron --outDir build/electron",
|
||||
"build:electron": "yarn build && electron-builder",
|
||||
"build:linux": "yarn build:server && mkdir -p app_dist/linux && pkg . --targets node23-linux-x64 --output app_dist/linux/farmcontrol-server && fpm -s dir -t deb -n farmcontrol-server -v $(node -p \"require('./package.json').version\") --after-install packaging/linux/after-install.sh --after-remove packaging/linux/after-remove.sh app_dist/linux/farmcontrol-server=/usr/bin/farmcontrol-server packaging/linux/farmcontrol-server.service=/lib/systemd/system/farmcontrol-server.service && fpm -s dir -t rpm -n farmcontrol-server -v $(node -p \"require('./package.json').version\") --after-install packaging/linux/after-install.sh --after-remove packaging/linux/after-remove.sh app_dist/linux/farmcontrol-server=/usr/bin/farmcontrol-server packaging/linux/farmcontrol-server.service=/lib/systemd/system/farmcontrol-server.service",
|
||||
"clean": "rimraf build"
|
||||
},
|
||||
"author": "Tom Butcher",
|
||||
@ -47,6 +50,7 @@
|
||||
"electron-builder": "^26.0.12",
|
||||
"jest": "^30.2.0",
|
||||
"nodemon": "^3.1.11",
|
||||
"pkg": "^5.8.1",
|
||||
"react": "^19.2.0",
|
||||
"react-dom": "^19.2.0",
|
||||
"rimraf": "^6.1.2",
|
||||
@ -72,31 +76,6 @@
|
||||
},
|
||||
"win": {
|
||||
"target": "nsis"
|
||||
},
|
||||
"linux": {
|
||||
"target": [
|
||||
"AppImage",
|
||||
"deb",
|
||||
"rpm"
|
||||
],
|
||||
"category": "Utility",
|
||||
"maintainer": "Tom Butcher <tom@tombutcher.work>",
|
||||
"executableName": "farmcontrol-server"
|
||||
},
|
||||
"deb": {
|
||||
"priority": "optional",
|
||||
"afterInstall": "packaging/linux/after-install.sh",
|
||||
"afterRemove": "packaging/linux/after-remove.sh"
|
||||
},
|
||||
"rpm": {
|
||||
"afterInstall": "packaging/linux/after-install.sh",
|
||||
"afterRemove": "packaging/linux/after-remove.sh"
|
||||
},
|
||||
"extraResources": [
|
||||
{
|
||||
"from": "packaging/linux/farmcontrol-server.service",
|
||||
"to": "farmcontrol-server.service"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -1,16 +1,5 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Copy systemd service file
|
||||
# The installation directory is usually /opt/Farm Control Server
|
||||
# but we can try to find it if it's different.
|
||||
APP_DIR="/opt/Farm Control Server"
|
||||
if [ ! -d "$APP_DIR" ]; then
|
||||
# Fallback to slugified name
|
||||
APP_DIR="/opt/farmcontrol-server"
|
||||
fi
|
||||
|
||||
cp "$APP_DIR/resources/farmcontrol-server.service" /etc/systemd/system/farmcontrol-server.service
|
||||
|
||||
# Reload systemd to recognize the new service
|
||||
systemctl daemon-reload
|
||||
|
||||
|
||||
@ -6,9 +6,6 @@ systemctl stop farmcontrol-server.service
|
||||
# Disable the service
|
||||
systemctl disable farmcontrol-server.service
|
||||
|
||||
# Remove the systemd service file
|
||||
rm -f /etc/systemd/system/farmcontrol-server.service
|
||||
|
||||
# Reload systemd
|
||||
systemctl daemon-reload
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user