62 lines
1.9 KiB
Makefile
62 lines
1.9 KiB
Makefile
host := "bl@flo-homeserver"
|
|
hagfisk_dir := "~/hagfisk"
|
|
|
|
# Build binary locally
|
|
build:
|
|
echo "Building hagfisk binary..."
|
|
cargo build --release
|
|
|
|
# Stop app service (must stop before DB operations)
|
|
stop-app:
|
|
ssh {{host}} "systemctl --user stop hagfisk.service"
|
|
|
|
# Start app service
|
|
start-app:
|
|
ssh {{host}} "systemctl --user start hagfisk.service"
|
|
|
|
# Restart app service
|
|
restart-app:
|
|
ssh {{host}} "systemctl --user restart hagfisk.service"
|
|
|
|
# Deploy and restart (safe for regular updates)
|
|
deploy: build
|
|
ssh -q {{host}} "rm -f {{hagfisk_dir}}/hagfisk"
|
|
echo "Syncing binary to remote..."
|
|
rsync -avz --progress ./target/release/hagfisk {{host}}:{{hagfisk_dir}}/hagfisk
|
|
echo "Restoring SELinux contexts..."
|
|
ssh -t -q {{host}} "sudo restorecon -RF {{hagfisk_dir}}"
|
|
ssh -q {{host}} "systemctl --user daemon-reload"
|
|
ssh -q {{host}} "systemctl --user restart hagfisk.service"
|
|
|
|
# Deploy with full re-ingest (stops service first)
|
|
deploy-reingest: build stop-app
|
|
echo "Syncing binary to remote..."
|
|
rsync -avz --progress ./target/release/hagfisk {{host}}:{{hagfisk_dir}}/hagfisk
|
|
echo "Restoring SELinux contexts..."
|
|
ssh -t -q {{host}} "sudo restorecon -RF {{hagfisk_dir}}"
|
|
ssh -q {{host}} "systemctl --user daemon-reload"
|
|
echo "Running full re-ingest..."
|
|
ssh {{host}} "cd {{hagfisk_dir}} && ./hagfisk ingest --full"
|
|
echo "Starting service..."
|
|
ssh {{host}} "systemctl --user start hagfisk.service"
|
|
|
|
# Manual full ingest (assumes service is stopped)
|
|
ingest-full:
|
|
ssh {{host}} "cd {{hagfisk_dir}} && ./hagfisk ingest --full"
|
|
|
|
# Stream logs from remote app
|
|
logs-app:
|
|
ssh {{host}} "journalctl --user -u hagfisk -f"
|
|
|
|
# Show status of app
|
|
ps-app:
|
|
ssh {{host}} "systemctl --user status hagfisk.service"
|
|
|
|
# Stream logs from remote ingest (manual run)
|
|
logs-ingest:
|
|
ssh {{host}} "journalctl --user -u hagfisk-ingest -f"
|
|
|
|
# Show status of ingest
|
|
ps-ingest:
|
|
ssh {{host}} "systemctl --user status hagfisk-ingest.service"
|