Verificando a Transferência de Arquivos com Sucesso
Após usar o módulo copy para transferir arquivos, é importante verificar se a transferência foi bem-sucedida. Ansible fornece várias maneiras de garantir a integridade e correção dos arquivos copiados.
Verificando a Existência do Arquivo
A maneira mais simples de verificar uma transferência de arquivo bem-sucedida é verificar se o arquivo de destino existe no host remoto. Você pode usar o módulo stat em Ansible para obter informações sobre o arquivo remoto, incluindo sua existência.
- hosts: all
tasks:
- name: Copiar arquivo para o host remoto
copy:
src: /path/to/local/file.txt
dest: /path/to/remote/file.txt
- name: Verificar a existência do arquivo
stat:
path: /path/to/remote/file.txt
register: remote_file
- debug:
msg: "Transferência de arquivo bem-sucedida"
when: remote_file.stat.exists
Neste exemplo, o módulo stat é usado para verificar se o arquivo remoto existe. Se a propriedade stat.exists for true, a transferência de arquivo é considerada bem-sucedida.
Comparando Códigos de Verificação de Arquivos
Para garantir a integridade do arquivo copiado, você pode comparar o código de verificação do arquivo local com o código de verificação do arquivo remoto. Isso ajuda a verificar se o arquivo foi transferido sem corrupção.
- hosts: all
tasks:
- name: Copiar arquivo para o host remoto
copy:
src: /path/to/local/file.txt
dest: /path/to/remote/file.txt
- name: Obter código de verificação do arquivo local
stat:
path: /path/to/local/file.txt
register: local_file
- name: Obter código de verificação do arquivo remoto
stat:
path: /path/to/remote/file.txt
register: remote_file
- debug:
msg: "Transferência de arquivo bem-sucedida"
when: local_file.stat.checksum == remote_file.stat.checksum
Neste exemplo, o módulo stat é usado para obter o código de verificação de ambos os arquivos, local e remoto. Se os códigos de verificação corresponderem, a transferência de arquivo é considerada bem-sucedida.
Ao verificar a existência e a integridade dos arquivos copiados, você pode garantir que o processo de transferência de arquivos foi concluído com sucesso e que os sistemas remotos possuem os arquivos corretos.