All checks were successful
continuous-integration/drone/push Build is passing
Reviewed-on: jf/SavaneWiki#1
1.8 KiB
1.8 KiB
title, summary, author, date
| title | summary | author | date | |
|---|---|---|---|---|
| Pense-bête Ansible | Trucs et astuces pour Ansible |
|
2024-07-19 |
Pense-bête Ansible
Ternary pour choisir la valeur d'une variable selon un état vrai ou faux
- name: "{{ boolean_var is not defined|ternary('is true', 'is false') }}"
Source : ansible.builtin.ternary filter – Ternary operation filter
Renvoi le chemin du fichier à trouver entre deux.
- name: Test paths
tags: always
ansible.builtin.stat:
path: "{{ item }}"
loop:
- /first/path/to/test
- /second/path/to/test
register: paths_stat
- name: Set found path
ansible.builtin.set_fact:
postmaster_path: "{{ item.stat.path }}"
loop: "{{ paths_stat.results }}"
when: item.stat.exists
Source : ansible.builtin.stat module – Retrieve file or file system status
Installation de tous les rpms présents dans un répertoire.
Exemple de paquets pour RabbitMQ.
#rpm_install "../packages/$DISTRIBUTION/rpms_erlang2/*.rpm"
- name: Find rpms to install
ansible.builtin.find:
paths: "{{ sc_src_tmp }}/"
patterns: "*.rpm"
use_regex: false
recurse: true
register: found_rpm_files
- name: found rpm files
debug:
var: found_rpm_files.files.path
- name: Setting rpms loop to install
ansible.builtin.set_fact:
rpm_list: "{{ found_rpm_files.files | map(attribute='path') | list }}"
- name: Install RabbitMQ rpms
ansible.builtin.dnf:
disable_gpg_check: true
name: '{{ rpm_list }}'
state: installed
register: rpms_installed
- debug:
msg: "Installed rpms: {{ rpms_installed.results }}"