Compare commits
2 Commits
c79477d7fe
...
a7094c01c6
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
a7094c01c6 | ||
|
|
292506ec98 |
@@ -28,6 +28,14 @@ fi
|
||||
|
||||
echo "==> Detected package format: $PKG_FORMAT (arch: $NFPM_ARCH)"
|
||||
|
||||
# Any packaged input newer than $1. Mirrors nfpm.yaml's `contents:` — keep the
|
||||
# two in step, or the build silently serves a stale binary again.
|
||||
newer_inputs() {
|
||||
find src/ -name '*.ts' -newer "$1" 2>/dev/null | head -1
|
||||
find stack/ completions/ deploy/ -type f -newer "$1" 2>/dev/null | head -1
|
||||
find nfpm.yaml -newer "$1" 2>/dev/null | head -1
|
||||
}
|
||||
|
||||
# Find package matching the target architecture
|
||||
# RPM uses x86_64/aarch64, DEB uses amd64/arm64
|
||||
find_pkg() {
|
||||
@@ -38,8 +46,11 @@ find_pkg() {
|
||||
if [ "$PKG_FORMAT" = "rpm" ]; then
|
||||
PKG_FILE=$(find_pkg "dist/mcpctl-*.rpm")
|
||||
|
||||
# Build if no package exists or if source is newer
|
||||
if [[ -z "$PKG_FILE" ]] || [[ $(find src/ -name '*.ts' -newer "$PKG_FILE" 2>/dev/null | head -1) ]]; then
|
||||
# Build if no package exists or if any PACKAGED input is newer.
|
||||
# Watching only src/*.ts silently shipped a stale package whenever a
|
||||
# non-TypeScript artifact changed — stack/claude-vllm, the completions, the
|
||||
# systemd unit are all in nfpm.yaml's contents and none of them are .ts.
|
||||
if [[ -z "$PKG_FILE" ]] || [[ $(newer_inputs "$PKG_FILE") ]]; then
|
||||
echo "==> Building RPM..."
|
||||
bash scripts/build-rpm.sh
|
||||
PKG_FILE=$(find_pkg "dist/mcpctl-*.rpm")
|
||||
@@ -52,8 +63,11 @@ if [ "$PKG_FORMAT" = "rpm" ]; then
|
||||
else
|
||||
PKG_FILE=$(find_pkg "dist/mcpctl*.deb")
|
||||
|
||||
# Build if no package exists or if source is newer
|
||||
if [[ -z "$PKG_FILE" ]] || [[ $(find src/ -name '*.ts' -newer "$PKG_FILE" 2>/dev/null | head -1) ]]; then
|
||||
# Build if no package exists or if any PACKAGED input is newer.
|
||||
# Watching only src/*.ts silently shipped a stale package whenever a
|
||||
# non-TypeScript artifact changed — stack/claude-vllm, the completions, the
|
||||
# systemd unit are all in nfpm.yaml's contents and none of them are .ts.
|
||||
if [[ -z "$PKG_FILE" ]] || [[ $(newer_inputs "$PKG_FILE") ]]; then
|
||||
echo "==> Building DEB..."
|
||||
bash scripts/build-deb.sh
|
||||
PKG_FILE=$(find_pkg "dist/mcpctl*.deb")
|
||||
|
||||
Reference in New Issue
Block a user