Parses the loose invites file (name,url per line; blank lines and comments skipped), normalizes names (vpsecops -> vp-secops), extracts email/username/displayName from the invite URL query params, and merges into agents.yaml. Unknown agents are appended phase1-only. Duplicate invite tokens are skipped loudly (stale copy-paste guard) while valid entries still merge. Verified live: caught the svp-knel line reusing coo's token, merged 5 agents, appended vp-investing and vp-trading.
25 lines
1.1 KiB
YAML
25 lines
1.1 KiB
YAML
services:
|
|
provision:
|
|
build: .
|
|
container_name: tsys-agent-provisioner
|
|
env_file:
|
|
- ${BW_ENV_FILE:-${HOME}/.config/bw/env}
|
|
user: "provision"
|
|
volumes:
|
|
- ./agents.yaml:/app/agents.yaml:ro
|
|
- ./state:/app/state
|
|
- ./bw-state:/home/provision/.config/Bitwarden CLI
|
|
- ./bw_helper.py:/app/bw_helper.py:ro
|
|
- ./provision-agent.py:/app/provision-agent.py:ro
|
|
- ./test_bw_helper.py:/app/test_bw_helper.py:ro
|
|
- ./test_bw_persistence.py:/app/test_bw_persistence.py:ro
|
|
- ./dump-cloudron-dom.py:/app/dump-cloudron-dom.py:ro
|
|
- ./enable-cloudron-2fa.py:/app/enable-cloudron-2fa.py:ro
|
|
- ./verify-cloudron-2fa.py:/app/verify-cloudron-2fa.py:ro
|
|
- ./investigate-2fa-login.py:/app/investigate-2fa-login.py:ro
|
|
- ./dump-sso-flows.py:/app/dump-sso-flows.py:ro
|
|
- ./provision-discourse.py:/app/provision-discourse.py:ro
|
|
- ./provision-discourse-apikey.py:/app/provision-discourse-apikey.py:ro
|
|
- ./provision-redmine.py:/app/provision-redmine.py:ro
|
|
- ./merge-invites.py:/app/merge-invites.py:ro
|