If the repo doesn't exist on the sandbox host, the chmod fails.
Now e2e-cron-install rsyncs the repo first (same mechanism as make e2e),
then installs the cron entry. run-on-host.sh uses git pull for
subsequent updates.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
For environments where ansible-playbook is unavailable (e.g. WSL2 TLS
issue blocks install). Deploys id_custodian_agent.pub via direct SSH
using any existing admin key.
Usage: make custodian-key-deploy ADMIN_KEY=~/.ssh/id_ops
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- make custodian-keygen: generates ~/.ssh/id_custodian_agent, writes
public key to railiance-infra/ansible/inventory/group_vars/all.yaml
- make custodian-key-show: prints the current public key
- e2e targets automatically use id_custodian_agent when present
- e2e-cron-install uses custodian key, no manual key passing needed
Full flow:
make custodian-keygen # one-time
cd ~/railiance-infra && make provision-custodian-agent # deploy key
make e2e-cron-install REPO=activity-core # install cron
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>