File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -107,7 +107,9 @@ deploy-config:
107107
108108deploy-systemd :
109109 scp deploy/systemd/* .service deploy/systemd/* .target $(JETSON_TARGET ) :/tmp/
110- ssh $(JETSON_TARGET ) ' sudo cp /tmp/genie-*.service /tmp/homeassistant.service /tmp/geniepod*.target /etc/systemd/system/ 2>/dev/null; \
110+ ssh $(JETSON_TARGET ) ' for unit in /tmp/genie-*.service /tmp/homeassistant.service /tmp/geniepod*.target; do \
111+ sudo install -m 0644 " $$ unit" " /etc/systemd/system/$$ (basename " $$ unit" )" ; \
112+ done ; \
111113 sudo systemctl daemon-reload'
112114
113115deploy-docker :
Original file line number Diff line number Diff line change @@ -200,6 +200,22 @@ fn makefile_deploys_restart_helper() {
200200 ) ;
201201}
202202
203+ /// Verify systemd deploy replaces stale or masked unit-file symlinks.
204+ #[ test]
205+ fn makefile_installs_systemd_units_instead_of_copying_through_symlinks ( ) {
206+ let path = workspace_root ( ) . join ( "Makefile" ) ;
207+ let contents = std:: fs:: read_to_string ( & path) . unwrap ( ) ;
208+
209+ assert ! (
210+ contents. contains( "sudo install -m 0644 \" $$unit\" " ) ,
211+ "Makefile should replace stale/masked unit files instead of copying through symlinks"
212+ ) ;
213+ assert ! (
214+ !contents. contains( "sudo cp /tmp/genie-*.service" ) ,
215+ "Makefile should not use cp for systemd units; cp follows masked-unit symlinks"
216+ ) ;
217+ }
218+
203219/// Verify the restart helper does not bounce llama.cpp on routine app updates.
204220#[ test]
205221fn restart_helper_skips_llm_service ( ) {
You can’t perform that action at this time.
0 commit comments