Paillasse/ansible/roles/openstack-projet/tasks/main.yml
Adam Belkacemi 3f0b565e1e sauvegarde la base du portail et teste sa restauration chaque semaine
La sauvegarde ne couvrait que /etc, /home et /root : la base MariaDB du
portail et son .env (APP_KEY) en étaient absents. Ajoute aussi le réglage
du quota et du gabarit du projet des labs dans Ansible, la reprise des VM
au démarrage de l'hôte (Nova), et le script du test de capacité.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-09 17:28:50 +02:00

39 lines
1.6 KiB
YAML

---
# Client openstack de Kolla, compte admin (clouds.yaml généré par post-deploy).
- name: lire les gabarits existants
ansible.builtin.command: openstack flavor list -f json
environment: &os_admin
PATH: "/opt/kolla-venv/bin:{{ ansible_env.PATH }}"
OS_CLIENT_CONFIG_FILE: /etc/kolla/clouds.yaml
OS_CLOUD: kolla-admin
register: openstack_gabarits_existants
changed_when: false
- name: créer les gabarits manquants
ansible.builtin.command: >-
openstack flavor create --public --ram {{ item.ram }} --vcpus {{ item.vcpus }}
--disk {{ item.disque }} {{ item.nom }}
environment: *os_admin
loop: "{{ openstack_gabarits }}"
when: item.nom not in (openstack_gabarits_existants.stdout | from_json | map(attribute='Name') | list)
- name: lire le quota de calcul du projet
ansible.builtin.command: openstack quota show --compute {{ openstack_projet }} -f json
environment: *os_admin
register: openstack_quota_brut
changed_when: false
- name: régler le quota de calcul du projet
ansible.builtin.command: >-
openstack quota set --instances {{ openstack_projet_quota.instances }}
--cores {{ openstack_projet_quota.cores }} --ram {{ openstack_projet_quota.ram }}
{{ openstack_projet }}
environment: *os_admin
vars:
openstack_quota_actuel: >-
{{ dict(openstack_quota_brut.stdout | from_json | map(attribute='Resource') |
zip(openstack_quota_brut.stdout | from_json | map(attribute='Limit'))) }}
when: >-
openstack_quota_actuel.instances != openstack_projet_quota.instances or
openstack_quota_actuel.cores != openstack_projet_quota.cores or
openstack_quota_actuel.ram != openstack_projet_quota.ram