Files
clawmates/deploy/gw-04/clawmates-deploy.service
T
Omar Sobh 8f29cf8e44
ci / gates (push) Successful in 6s
ci / frontend (push) Successful in 37s
ci / rust (push) Successful in 2m57s
ci / e2e (push) Failing after 15s
ci / publish (push) Successful in 21s
deploy(gw-04): run the timer as a dedicated clawmates user under /opt
Move the running stack off root ownership. The systemd service now runs
as User=clawmates:clawmates with WorkingDirectory=/opt/clawmates, and the
script's COMPOSE_DIR default follows. This closes the "rootful compose
stack" ask from the original ship-readiness audit — deploys no longer
require any part of the pipeline to run as root beyond docker access
(the clawmates user gets that via the docker group).

Docker-managed volumes (pgdata, broker_run, broker_key, brains, filedata)
stay put; the compose project name is unchanged so docker resolves them
to the same physical volumes. The old /root/clawmates directory stays in
place as an emergency rollback for a week, then gets removed as follow-up.
2026-07-05 19:39:08 -07:00

15 lines
323 B
Desktop File

[Unit]
Description=Clawmates rolling deploy (pull :latest, roll on drift)
Wants=docker.service
After=docker.service network-online.target
[Service]
Type=oneshot
User=clawmates
Group=clawmates
WorkingDirectory=/opt/clawmates
ExecStart=/usr/local/bin/clawmates-deploy.sh
StandardOutput=journal
StandardError=journal
Nice=10