Files
esh-pfi-infrastructure/playbooks/svos-releases/nh3-svos-f40bf6d-v0.0.25.yaml
T

27 lines
1.8 KiB
YAML

# nh3-svos -> SVOS v0.0.25 (f40bf6d): UI-only publish. UI 0.0.29 (U23: the hero's tree drawn in depth, skin only).
# Kernel = a version bump; no app change, no manifest revision, no card.
# svos-dev's request, thread 01M5ADWS1PZ5NWRXAVJVWGYTAE. PRE-REQS: the stage playbook; origin's v0.0.25 == f40bf6d78d06
# (git ls-remote on nh3-dev before this runs). current must move because svos-front-inventory generates from
# /opt/svos/current/static; NOTHING restarts: the kernel, knowledge and voice keep running 2f29d0d's code and the judge and
# interface d14dc94's (all identical in code to f40bf6d), so keep both dirs until those processes restart.
steps:
- name: Pre-reqs present
sudo: true
shell: test -f /opt/svos/releases/f40bf6d/static/index.html && readlink /opt/svos/current
changed_when: "false"
- name: Switch current to f40bf6d
sudo: true
shell: ln -sfn /opt/svos/releases/f40bf6d /opt/svos/current.new && chgrp -h svc-svos /opt/svos/current.new && mv -T /opt/svos/current.new /opt/svos/current && readlink /opt/svos/current
- name: Front door inventory (UI 0.0.29 live; d14dc94 becomes previous)
sudo: true
shell: /usr/local/sbin/svos-front-inventory 2>&1 | grep -E 'GENERATED|updated|root \*|path /assets' | head -4
verify:
- name: Front door inventory current; health unchanged
sudo: true
shell: /usr/local/sbin/svos-front-inventory --check && curl -s http://127.0.0.1:8400/health && echo
changed_when: "false"
- name: Which release dir each running service maps (nothing restarted)
sudo: true
shell: for u in svos-kernel svos-interface svos-knowledge svos-judge svos-voice; do pid=$(systemctl show $u -p MainPID --value); printf '%s %s\n' $u "$(grep -oE '/opt/svos/releases/[0-9a-f]+' /proc/$pid/maps | sort -u | tr '\n' ' ')"; done
changed_when: "false"