I'm using the junos.device collection to run a playbook to create a .patch file for each device.
The problem that I have is that the 'dest_dir' setting only save the last item on the loop.
   - name: TEST1
     juniper.device.config:
       # config_mode: private
       # retrieve: 'candidate'
       diff: true
       check: true
       commit: false
       # format: set
       load: set
       # dest_dir: /home/user1/ansible/ansible/files/
       lines:
         - set interfaces xe-0/2/3 vlan-tagging
         - set interfaces xe-1/2/3 vlan-tagging
         - set interfaces xe-0/2/3 unit {{item.value.number}} vlan-id {{item.value.number}}
         - set interfaces xe-0/2/3 unit {{item.value.number}} family inet address 100.100.{{number}}.{{item.value.address}}/30
         - set interfaces xe-1/2/3 unit {{item.value.number}} vlan-id {{item.value.number}}
         - set interfaces xe-1/2/3 unit {{item.value.number}} family inet address 100.101.{{number}}.{{item.value.address}}/30
         - set routing-instances {{item.key}} instance-type virtual-router
         - set routing-instances {{item.key}} interface xe-0/2/3.{{item.value.number}}
         - set routing-instances {{item.key}} interface xe-1/2/3.{{item.value.number}}
         - set routing-instances {{item.key}} protocols ospf area 0.0.0.0 interface xe-1/2/3.{{item.value.number}}
         - set routing-instances {{item.key}} protocols ospf area 0.0.0.0 interface xe-0/2/3.{{item.value.number}}
     loop: "{{
vrf_data.name|dict2items}}"
     register: response
   Â
   Â
   Â
If I filter my response to only get the diff.prepared , then I get the result in a single line and with the "\n" on it.
Can someone please help me out with this?
This is the file output:
["\n[edit interfaces]\n+Â Â xe-0/2/3 {\n+Â Â Â Â Â Â vlan-tagging;\n+Â Â Â Â Â Â unit 507 {\n+Â Â Â Â Â Â Â Â Â Â vlan-id 507;\n+Â Â Â Â Â Â Â Â Â Â family inet {\n+Â Â Â Â Â Â Â Â Â Â Â Â Â Â address
100.100.222.26/30;\n+Â Â Â Â Â Â Â Â Â Â }\n+Â Â Â Â Â Â }\n+Â Â }\n+Â Â xe-1/2/3 {\n+Â Â Â Â Â Â vlan-tagging;\n+Â Â Â Â Â Â unit 507 {\n+Â Â Â Â Â Â Â Â Â Â vlan-id 507;\n+Â Â Â Â Â Â Â Â Â Â family inet {\n+Â Â Â Â Â Â Â Â Â Â Â Â Â Â address
100.101.222.26/30;\n+Â Â Â Â Â Â Â Â Â Â }\n+Â Â Â Â Â Â }\n+Â Â }\n[edit routing-instances]\n+Â Â FACILITIES {\n+Â Â Â Â Â Â instance-type virtual-router;\n+Â Â Â Â Â Â interface xe-0/2/3.507;\n+Â Â Â Â Â Â interface xe-1/2/3.507;\n+Â Â Â Â Â Â protocols {\n+Â Â Â Â Â Â Â Â Â Â ospf {\n+Â Â Â Â Â Â Â Â Â Â Â Â Â Â area 0.0.0.0 {\n+Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â interface xe-1/2/3.507;\n+Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â interface xe-0/2/3.507;\n+Â Â Â Â Â Â Â Â Â Â Â Â Â Â }\n+Â Â Â Â Â Â Â Â Â Â }\n+Â Â Â Â Â Â }\n+Â Â }\n", "\n[edit interfaces]\n+Â Â xe-0/2/3 {\n+Â Â Â Â Â Â vlan-tagging;\n+Â Â Â Â Â Â unit 506 {\n+Â Â Â Â Â Â Â Â Â Â vlan-id 506;\n+Â Â Â Â Â Â Â Â Â Â family inet {\n+Â Â Â Â Â Â Â Â Â Â Â Â Â Â address
100.100.222.22/30;\n+Â Â Â Â Â Â Â Â Â Â }\n+Â Â Â Â Â Â }\n+Â Â }\n+Â Â xe-1/2/3 {\n+Â Â Â Â Â Â vlan-tagging;\n+Â Â Â Â Â Â unit 506 {\n+Â Â Â Â Â Â Â Â Â Â vlan-id 506;\n+Â Â Â Â Â Â Â Â Â Â family inet {\n+Â Â Â Â Â Â Â Â Â Â Â Â Â Â address
100.101.222.22/30;\n+Â Â Â Â Â Â Â Â Â Â }\n+Â Â Â Â Â Â }\n+Â Â }\n[edit routing-instances]\n+Â Â VIDEO {\n+Â Â Â Â Â Â instance-type virtual-router;\n+Â Â Â Â Â Â interface xe-0/2/3.506;\n+Â Â Â Â Â Â interface xe-1/2/3.506;\n+Â Â Â Â Â Â protocols {\n+Â Â Â Â Â Â Â Â Â Â ospf {\n+Â Â Â Â Â Â Â Â Â Â Â Â Â Â area 0.0.0.0 {\n+Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â interface xe-1/2/3.506;\n+Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â interface xe-0/2/3.506;\n+Â Â Â Â Â Â Â Â Â Â Â Â Â Â }\n+Â Â Â Â Â Â Â Â Â Â }\n+Â Â Â Â Â Â }\n+Â Â }\n", "\n[edit interfaces]\n+Â Â xe-0/2/3 {\n+Â Â Â Â Â Â vlan-tagging;\n+Â Â Â Â Â Â unit 505 {\n+Â Â Â Â Â Â Â Â Â Â vlan-id 505;\n+Â Â Â Â Â Â Â Â Â Â family inet {\n+Â Â Â Â Â Â Â Â Â Â Â Â Â Â address
100.100.222.18/30;\n+Â Â Â Â Â Â Â Â Â Â }\n+Â Â Â Â Â Â }\n+Â Â }\n+Â Â xe-1/2/3 {\n+Â Â Â Â Â Â vlan-tagging;\n+Â Â Â Â Â Â unit 505 {\n+Â Â Â Â Â Â Â Â Â Â vlan-id 505;\n+Â Â Â Â Â Â Â Â Â Â family inet {\n+Â Â Â Â Â Â Â Â Â Â Â Â Â Â address
100.101.222.18/30;\n+Â Â Â Â Â Â Â Â Â Â }\n+Â Â Â Â Â Â }\n+Â Â }\n[edit routing-instances]\n+Â Â VOICE {\n+Â Â Â Â Â Â instance-type virtual-router;\n+Â Â Â Â Â Â interface xe-0/2/3.505;\n+Â Â Â Â Â Â interface xe-1/2/3.505;\n+Â Â Â Â Â Â protocols {\n+Â Â Â Â Â Â Â Â Â Â ospf {\n+Â Â Â Â Â Â Â Â Â Â Â Â Â Â area 0.0.0.0 {\n+Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â interface xe-1/2/3.505;\n+Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â interface xe-0/2/3.505;\n+Â Â Â Â Â Â Â Â Â Â Â Â Â Â }\n+Â Â Â Â Â Â Â Â Â Â }\n+Â Â Â Â Â Â }\n+Â Â }\n", "\n[edit interfaces]\n+Â Â xe-0/2/3 {\n+Â Â Â Â Â Â vlan-tagging;\n+Â Â Â Â Â Â unit 504 {\n+Â Â Â Â Â Â Â Â Â Â vlan-id 504;\n+Â Â Â Â Â Â Â Â Â Â family inet {\n+Â Â Â Â Â Â Â Â Â Â Â Â Â Â address
100.100.222.14/30;\n+Â Â Â Â Â Â Â Â Â Â }\n+Â Â Â Â Â Â }\n+Â Â }\n+Â Â xe-1/2/3 {\n+Â Â Â Â Â Â vlan-tagging;\n+Â Â Â Â Â Â unit 504 {\n+Â Â Â Â Â Â Â Â Â Â vlan-id 504;\n+Â Â Â Â Â Â Â Â Â Â family inet {\n+Â Â Â Â Â Â Â Â Â Â Â Â Â Â address
100.101.222.14/30;\n+Â Â Â Â Â Â Â Â Â Â }\n+Â Â Â Â Â Â }\n+Â Â }\n[edit routing-instances]\n+Â Â TEST {\n+Â Â Â Â Â Â instance-type virtual-router;\n+Â Â Â Â Â Â interface xe-0/2/3.504;\n+Â Â Â Â Â Â interface xe-1/2/3.504;\n+Â Â Â Â Â Â protocols {\n+Â Â Â Â Â Â Â Â Â Â ospf {\n+Â Â Â Â Â Â Â Â Â Â Â Â Â Â area 0.0.0.0 {\n+Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â interface xe-1/2/3.504;\n+Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â interface xe-0/2/3.504;\n+Â Â Â Â Â Â Â Â Â Â Â Â Â Â }\n+Â Â Â Â Â Â Â Â Â Â }\n+Â Â Â Â Â Â }\n+Â Â }\n"]
I would like something with the result I get when I use the dest_dir folder, but with all my changes on the same {{inventory_hostname}}.diff, example:
[edit interfaces xe-0/2/3]
+Â Â vlan-tagging;
[edit interfaces xe-0/2/3]
+Â Â Â unit 504 {
+Â Â Â Â Â Â Â vlan-id 504;
+Â Â Â Â Â Â Â family inet {
+Â Â Â Â Â Â Â Â Â Â Â address
100.100.222.14/30;
+Â Â Â Â Â Â Â }
+Â Â Â }
[edit interfaces]
+Â Â xe-1/2/3 {
+Â Â Â Â Â Â vlan-tagging;
+Â Â Â Â Â Â unit 504 {
+Â Â Â Â Â Â Â Â Â Â vlan-id 504;
+Â Â Â Â Â Â Â Â Â Â family inet {
+Â Â Â Â Â Â Â Â Â Â Â Â Â Â address
100.101.222.14/30;
+Â Â Â Â Â Â Â Â Â Â }
+Â Â Â Â Â Â }
+Â Â }
[edit routing-instances]
+Â Â TEST {
+Â Â Â Â Â Â instance-type virtual-router;
+Â Â Â Â Â Â interface xe-0/2/3.504;
+Â Â Â Â Â Â interface xe-1/2/3.504;
+Â Â Â Â Â Â protocols {
+Â Â Â Â Â Â Â Â Â Â ospf {
+Â Â Â Â Â Â Â Â Â Â Â Â Â Â area 0.0.0.0 {
+Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â interface xe-1/2/3.504;
+Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â interface xe-0/2/3.504;
+Â Â Â Â Â Â Â Â Â Â Â Â Â Â }
+Â Â Â Â Â Â Â Â Â Â }
+Â Â Â Â Â Â }
+Â Â }
Thanks.