This repository has been archived on 2026-06-26. You can view files and clone it, but cannot push or open issues or pull requests.
Set-OPS/roles/serveur_nginx/tasks/main.yml
Daniel Allaire ca0f95da28 Mettre les noms de roles et playbooks au singulier
serveurs_* -> serveur_, clients_ -> client_, suffixes pluriels au
singulier (serveur_web_dorsal/frontal, client_metrique, client_journal).

Renommage par tokens exacts : repertoires de roles, playbooks de groupes,
group_vars, variables internes des roles (serveur_nginx_*, conformite
ansible-lint), groupes du plan, constantes de code, docs. Faux-amis
preserves (serveurs_bd, scripts/serveurs.py, fonctions Python). Groupes
d'etat gardes au pluriel (hotes_actifs/planifies, modeles_vm).

Valide : ansible-lint 0 echec (0 var-naming), diff vide de la generation,
node --check, tous les registres. Ajout de .ansible-lint excluant docs/
(registres de donnees, pas du contenu Ansible).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-23 23:18:52 -04:00

85 lines
2.6 KiB
YAML

---
- name: Installer nginx
ansible.builtin.apt:
name: "{{ serveur_nginx_packages }}"
state: present
update_cache: true
cache_valid_time: 3600
- name: Deployer le durcissement de base nginx
ansible.builtin.template:
src: 99-chezlepro.conf.j2
dest: /etc/nginx/conf.d/99-chezlepro.conf
owner: root
group: root
mode: "0644"
notify: Valider et recharger nginx
- name: Desactiver le site Debian par defaut
ansible.builtin.file:
path: /etc/nginx/sites-enabled/default
state: absent
when: serveur_nginx_desactiver_defaut | bool
notify: Valider et recharger nginx
- name: Deployer les sites reverse proxy declares a la main
ansible.builtin.template:
src: site.conf.j2
dest: "/etc/nginx/sites-available/{{ item.nom }}.conf"
owner: root
group: root
mode: "0644"
loop: "{{ serveur_nginx_sites }}"
loop_control:
label: "{{ item.nom }}"
notify: Valider et recharger nginx
- name: Activer les sites reverse proxy declares a la main
ansible.builtin.file:
src: "/etc/nginx/sites-available/{{ item.nom }}.conf"
dest: "/etc/nginx/sites-enabled/{{ item.nom }}.conf"
state: link
loop: "{{ serveur_nginx_sites }}"
loop_control:
label: "{{ item.nom }}"
notify: Valider et recharger nginx
# --- Vhosts derives des applications (champ expose) + domaines (edge) ---
- name: Charger les registres applications et domaines
ansible.builtin.include_vars:
file: "{{ item }}"
loop:
- "{{ role_path }}/../../docs/applications.yml"
- "{{ role_path }}/../../docs/domaines.yml"
when: serveur_nginx_publier_expositions | bool
- name: Lister les expositions destinees a cet edge
ansible.builtin.set_fact:
serveur_nginx_expositions: >-
{{ {'applications': applications | default({})}
| expositions_des_applications({'domaines_publics': domaines_publics | default({})}, serveur_nginx_groupe) }}
when: serveur_nginx_publier_expositions | bool
- name: Deployer les vhosts derives des expositions web
ansible.builtin.template:
src: expositions.conf.j2
dest: /etc/nginx/sites-available/expositions.conf
owner: root
group: root
mode: "0644"
when: serveur_nginx_publier_expositions | bool
notify: Valider et recharger nginx
- name: Activer les vhosts derives des expositions web
ansible.builtin.file:
src: /etc/nginx/sites-available/expositions.conf
dest: /etc/nginx/sites-enabled/expositions.conf
state: link
when: serveur_nginx_publier_expositions | bool
notify: Valider et recharger nginx
- name: Activer et demarrer nginx
ansible.builtin.systemd:
name: "{{ serveur_nginx_service_name }}"
enabled: true
state: started