Olá Pessoal,
Como vocês estão observando, segue mais uma evolução desenvolvimento para nosso script em Ansible. Acredito que vocês haviam se perguntado: Não vejo nenhum objetivo se eu ficar armazenando/sobrescrever o mesmo arquivo sem ter nenhum histórico ou obter um database de alteração desse arquivo? Pois é, eu também pensei dessa forma, mas devido à isso trago agora uma alteração pequena, porém importante para você rastrear seu histório de alteração ou de logs.
Em nosso playbook podemos utilizar-se da função “ lookup ” atrelado a data+time de nosso sistema operacional que está executando a playbook. Vale ressaltar que essa data não tem nenhuma amarração com o time de seu equipamento ( router, switch, etc ), e sim a máquina host que esta executando nossa biblioteca do ansible, que por consequência devemos garantir para que ela esteja sincronizada com algum serviço de NTP.
Para essa visualização eu fiz alteração apenas em nosso arquivo ” commands_variance.yaml “, adicionando nossa função ” lookup “, e por consequencia adicionei minha varável ao nome do arquivo que estou salvando em ” .txt “
--- - name: Timestamp set_fact: mydate="{{lookup('pipe','date +%Y%m%d_%H%M%S')}}" - name: show running-config ios_command: provider: "{{ provider }}" commands: - show running-config register: config - name: save output Running copy: content: "{{ config.stdout[0] }}" dest: "/home/rodrigo/Documents/ansible/{{ inventory_hostname }}_running_{{mydate}}.txt" - name: show version ios_command: provider: "{{ provider }}" commands: - show version register: config - name: save output Version copy: content: "{{ config.stdout[0] }}" dest: "/home/rodrigo/Documents/ansible/{{ inventory_hostname }}_version.txt"
Após execução de nossa playbook segue o detalhamento da criação de meu arquivo.
Aguardo comentário e se alguém tiver mais alguma ideia para que possamos manipular esses comandos/arquivos fique a vontade de mencionar ou compartilhar. 😉
Abs,
Rodrigo
Comentários Recentes