CyVerse-Ansible.unixodbc-cfg
unixodbc-cfg
Ce rôle gère les fichiers de configuration pour unixODBC. Pour l’instant, il peut configurer les fichiers .odbc.ini
utilisateurs, mais à l'avenir, il pourra gérer les fichiers odbc.ini
et odbcinst.ini
système.
Exigences
Aucune
Variables du Rôle
Voici les variables du rôle. Aucune d'entre elles n'est obligatoire.
Variable | Par défaut | Commentaire |
---|---|---|
unixodbc_cfg_defer |
false | Indique s'il faut différer l'exécution. Voir ci-dessous. |
unixodbc_cfg_group |
unixodbc_cfg_user |
Le .odbc.ini sera généré pour ce groupe. |
unixodbc_cfg_odbcini_path |
/home/unixodbc_cfg_user |
C'est le répertoire où le fichier .odbc.ini sera placé. |
unixodbc_cfg_sources |
[] | Une liste de définitions de sources de données. Voir ci-dessous. |
unixodbc_cfg_user |
ansible_user |
Le .odbc.ini sera généré pour l'utilisateur donné. |
Si unixodbc_cfg_defer
est true
, le rôle ne fera aucun changement lorsque ses tâches main.yml
seront exécutées. Cela permet de gérer les dépendances implicites à travers le fichier meta/main.yml
lorsque ce rôle est utilisé par un autre rôle via une tâche import_role
ou include_role
.
Chaque élément de la liste unixodbc_cfg_sources
est une carte avec les champs suivants.
Champ | Requis | Par défaut | Commentaire |
---|---|---|---|
driver_file |
oui | Le nom du fichier pilote pour la source de données | |
driver_properties |
non | {} | Un dictionnaire contenant les propriétés passées au pilote de la source de données. |
source_name |
oui | Le nom de la source. | |
tracefile |
non | null | C'est le fichier où un trace sera écrit. Si ce champ n'est pas présent, est null , ou est vide, aucun trace ne sera écrit. |
Dépendances
aucune
Exemple de Playbook
Voici un exemple où le rôle est exécuté à partir d'une play.
- hôtes: serveurs
rôles:
- rôle: cyverse-ansible.unixodbc-cfg
vars:
unixodbc_cfg_sources:
- source_name: postgres
driver_file: /usr/pgsql-9.3/lib/psqlodbc.so
driver_properties:
CommLog: 0
Database: ICAT
Debug: 0
Ksqo: 0
Port: "{{ dbms_port }}"
ReadOnly: non
Servername: "{{ dbms_host }}"
Voici un exemple où les tâches odbc.yml
du rôle sont exécutées à partir d'une tâche include_role
.
- include_role:
name: cyverse-ansible.unixodbc-cfg
tasks_from: odbc.yml
vars:
unixodbc_cfg_odbcini_path: /var/lib/irods
unixodbc_cfg_user: "{{ service_account_name }}"
unixodbc_cfg_sources:
- source_name: postgres
driver_file: /usr/pgsql-9.3/lib/psqlodbc.so
driver_properties:
CommLog: 0
Database: "{{ db_name }}"
Debug: 0
Ksqo: 0
Port: "{{ dbms_port }}"
ReadOnly: non
Servername: "{{ dbms_host }}"
Licence
Voir licence.
Informations sur l'Auteur
Tony Edgin
tedgin@cyverse.org
CyVerse
ansible-galaxy install CyVerse-Ansible.unixodbc-cfg