Copiando Ficheiros com Ansible
Uma das tarefas mais comuns na automação de infraestruturas é copiar ficheiros do nó de controlo (o computador que executa o Ansible) para os hosts remotos. O Ansible fornece uma forma simples e eficiente de realizar esta tarefa utilizando o módulo copy.
O Módulo copy
O módulo copy no Ansible é usado para copiar ficheiros do nó de controlo para os hosts remotos. Suporta várias opções, tais como:
src: O ficheiro ou diretório de origem no nó de controlo.
dest: O caminho de destino no host remoto.
owner: O proprietário do ficheiro no host remoto.
group: O grupo do ficheiro no host remoto.
mode: As permissões do ficheiro no host remoto.
Copiando um Único Ficheiro
Para copiar um único ficheiro do nó de controlo para um host remoto, pode utilizar o seguinte playbook Ansible:
- hosts: all
tasks:
- name: Copiar um ficheiro
copy:
src: /path/to/local/file.txt
dest: /path/to/remote/file.txt
owner: myuser
group: mygroup
mode: "0644"
Neste exemplo, o módulo copy é usado para copiar o ficheiro file.txt do caminho local /path/to/local/file.txt para o caminho remoto /path/to/remote/file.txt. O ficheiro será propriedade do utilizador myuser e do grupo mygroup, e terá permissões 0644 (escrita e leitura para o proprietário, apenas leitura para o grupo e outros).
Copiando um Diretório
Para copiar um diretório inteiro do nó de controlo para um host remoto, pode utilizar o seguinte playbook Ansible:
- hosts: all
tasks:
- name: Copiar um diretório
copy:
src: /path/to/local/directory/
dest: /path/to/remote/directory/
owner: myuser
group: mygroup
mode: "0755"
recursive: yes
Neste exemplo, o módulo copy é usado para copiar o conteúdo do diretório local /path/to/local/directory/ para o diretório remoto /path/to/remote/directory/. A opção recursive está definida como yes para garantir que toda a estrutura do diretório é copiada. Os ficheiros e diretórios serão propriedade do utilizador myuser e do grupo mygroup, e terão permissões 0755 (leitura, escrita e execução para o proprietário, leitura e execução para o grupo e outros).
Utilizando o módulo copy, pode copiar ficheiros e diretórios do nó de controlo para os hosts remotos de forma fácil e eficiente, otimizando os seus fluxos de trabalho de automação de infraestruturas.