2 Commits

Author SHA1 Message Date
6ede249da9 🔒 fix(ansible): gate vault auth disable behind vault_oidc_force_reset (default off) (#5)
Co-authored-by: Gabriel Radureau <arcodange@gmail.com>
Co-committed-by: Gabriel Radureau <arcodange@gmail.com>
2026-05-06 15:03:33 +02:00
9e821e1626 ♻️ refactor(ansible): move gitea secret user-propagation list to inventory (#4)
Co-authored-by: Gabriel Radureau <arcodange@gmail.com>
Co-committed-by: Gabriel Radureau <arcodange@gmail.com>
2026-05-06 14:48:05 +02:00
2 changed files with 18 additions and 2 deletions

View File

@@ -0,0 +1,11 @@
---
# Gitea ownership configuration consumed by playbooks running on `localhost`
# (e.g. tools/hashicorp_vault.yml). Role-level defaults (gitea_username,
# gitea_organization) live in roles/gitea_secret/defaults/main.yml ; this file
# is for fact lists that the inventory should declare.
# Users (Gitea owner_type=user) to which org-level Gitea Action secrets must
# also be propagated. Repos owned by these users cannot read org-level secrets,
# so the secret propagation playbook iterates over this list.
gitea_secret_propagation_users:
- arcodange

View File

@@ -36,6 +36,11 @@
# WARNING : this disables AND wipes ALL gitea_cicd_* per-app JWT roles
# (created by tools/hashicorp-vault/iac/) every time it runs. Default is OFF
# to preserve those roles across normal ansible runs ; opt-in only when you
# really want to rebuild the OIDC backend from scratch (e.g. config drift on
# bound_issuer or similar).
- name: Delete existing Gitea OIDC backends if they exist - name: Delete existing Gitea OIDC backends if they exist
include_tasks: vault_cmd.yml include_tasks: vault_cmd.yml
vars: vars:
@@ -48,6 +53,7 @@
- gitea_jwt - gitea_jwt
loop_control: loop_control:
loop_var: backend_name loop_var: backend_name
when: vault_oidc_force_reset | default(false) | bool
- name: use tofu to provision vault - name: use tofu to provision vault
block: block:
@@ -123,7 +129,6 @@
}) | b64encode }} }) | b64encode }}
gitea_owner_type: 'user' gitea_owner_type: 'user'
gitea_owner_name: '{{ item }}' gitea_owner_name: '{{ item }}'
loop: loop: '{{ gitea_secret_propagation_users }}'
- arcodange
loop_control: loop_control:
label: '{{ item }}' label: '{{ item }}'