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 ef39f4352f Decouplage moteur/instance Phase 1b : neutraliser la marque chezlepro
Les fichiers geres par les roles (99-chezlepro.conf, chezlepro_filter,
chezlepro-bind.conf, /etc/redis/chezlepro.conf...) et les 14 templates
correspondants passent a la marque neutre du moteur 'setops' (git mv +
references src/dest). Un loup ne deploie plus de fichiers marques chezlepro.

Coherence src <-> template verifiee, ansible-lint 0 echec, diff vide,
syntax-check des playbooks de groupes OK. READMEs laisses (exemples).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-24 09:03:04 -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-setops.conf.j2
dest: /etc/nginx/conf.d/99-setops.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