Verificar la Transferencia Exitosa de Archivos
Después de utilizar el módulo copy
para transferir archivos, es importante verificar que la transferencia de archivos se haya realizado correctamente. Ansible ofrece varias formas de garantizar la integridad y la corrección de los archivos copiados.
Comprobar la Existencia del Archivo
La forma más sencilla de verificar una transferencia de archivos exitosa es comprobar si el archivo de destino existe en el host remoto. Puedes utilizar el módulo stat
en Ansible para obtener información sobre el archivo remoto, incluyendo su existencia.
- hosts: all
tasks:
- name: Copy file to remote host
copy:
src: /path/to/local/file.txt
dest: /path/to/remote/file.txt
- name: Verify file existence
stat:
path: /path/to/remote/file.txt
register: remote_file
- debug:
msg: "File transfer successful"
when: remote_file.stat.exists
En este ejemplo, se utiliza el módulo stat
para comprobar si el archivo remoto existe. Si la propiedad stat.exists
es true
, se considera que la transferencia de archivos fue exitosa.
Comparar Sumas de Verificación (Checksums) de Archivos
Para garantizar la integridad del archivo copiado, puedes comparar la suma de verificación (checksum) del archivo local con la suma de verificación del archivo remoto. Esto ayuda a verificar que el archivo se haya transferido sin ningún tipo de corrupción.
- hosts: all
tasks:
- name: Copy file to remote host
copy:
src: /path/to/local/file.txt
dest: /path/to/remote/file.txt
- name: Get local file checksum
stat:
path: /path/to/local/file.txt
register: local_file
- name: Get remote file checksum
stat:
path: /path/to/remote/file.txt
register: remote_file
- debug:
msg: "File transfer successful"
when: local_file.stat.checksum == remote_file.stat.checksum
En este ejemplo, se utiliza el módulo stat
para obtener la suma de verificación de ambos archivos, el local y el remoto. Si las sumas de verificación coinciden, se considera que la transferencia de archivos fue exitosa.
Al verificar la existencia y la integridad de los archivos copiados, puedes asegurarte de que el proceso de transferencia de archivos se haya completado correctamente y de que los sistemas remotos tengan los archivos correctos.