This directory is intended to be the root of a dedicated git repository
referenced by the worker via U_ANSIBLE_REPO.
local.yml— playbook run byansible-pullroles/bootstrap— swap, docker, certbot, directories (--tags bootstrap)roles/ssl_prelude— HTTP stack before SSL cutover (--tags ssl)roles/files— template configs / neo / compose files (--tags files)roles/env—/srv/una/.envand.sec_*secrets (--tags env)roles/compose— docker-compose down / pull / up (--tags compose)roles/pull_timer— systemd timer (--tags timer)templates/— Jinja2 templates (same paths under/srv/unaas legacy deploy)
| Tag | Used by |
|---|---|
bootstrap |
deploy |
files |
deploy, edit, enable-ssl, timer (on repo change) |
env |
deploy, edit, enable-ssl, timer (on repo change) |
compose |
deploy, edit, enable-ssl, timer (on repo change) |
ssl |
enable-ssl (HTTP prelude before files) |
timer |
deploy, edit, enable-ssl (install/update systemd timer) |
After deploy, una-ansible-pull.timer runs periodically to keep the deployment synced with the repository.
- Cheap
git fetch/ checkout of the ansible repo - If HEAD is unchanged since last apply → exit immediately
- If HEAD changed → full apply with tags
files,env,compose,timer(compose restart included)
Wrapper: /usr/local/sbin/una-ansible-pull
Extra vars: /srv/una/.ansible-extra-vars.json (mode 0600)
systemctl status una-ansible-pull.timer
journalctl -u una-ansible-pull.service -fU_ANSIBLE_REPO— git URL (required)U_ANSIBLE_BRANCH— branch (defaultmain)U_ANSIBLE_CHECKOUT— checkout dir on host (default/var/lib/una-ansible)