Welche Gründe sprechen für das Ansible Copy-Modul, um einzelne Dateienzeilen zu ändern?

Quali sono le ragioni per utilizzare il modulo Ansible Copy per modificare singole righe di file?

Spesso è necessario modificare singole linee di file. A questo scopo vengono utilizzati molti moduli lineinfile o blockinfile. Tuttavia, l'esperienza pratica dimostra che questi moduli non dovrebbero essere utilizzati se si vogliono modificare i file con essi. È meglio utilizzare il modulo template o copy. In particolare, per gestire non solo singole righe, ma l'intero file. Ciò è dovuto a due motivi:

  • Quando si usa lineinfile, spesso si devono usare le regex. Questo comporta i seguenti problemi: L'uso di regex è spesso complicato e le persone che utilizzano i playbook devono avere familiarità con regex.
  • Il programmatore stesso deve sapere ed essere in grado di ricordare che questa particolare linea è gestita da Ansible in questo file di configurazione.

Se si gestisce l'intero file con un modello Ansible, si può usare la variabileansible_managed per rendere chiaro che il file è sotto il controllo di Ansible. Un altro vantaggio è che si può usare una variabile per il selinux-state e cambiarla semplicemente sui server sui quali selinux non dovrebbe essere in stato di enforcing.

Programmi di formazione/corsi/seminari adeguati: