Hi,

delegate_to forces the action to be carried out on the given host (in this
case localhost). AFAIK all network commands must be executed on the
controller (since usually the network devices don't have a python
interpreter).
Yes, specifying provider like that refers to a variable, in this case a
fact that you've set (which is a form of variable too).

kind regards
Pshem


On Thu, 23 Nov 2017 at 20:12 SK <[email protected]> wrote:

> Excellent!  This worked now.  What did this delegate_to command actually
> do?  Did the provider under ios_config call the provider variables written
> already?
>
>
> On Wednesday, November 22, 2017 at 4:35:38 PM UTC+8, Pshem Kowalczyk wrote:
>
>> Hi,
>>
>> Try this:
>>
>> - name: DEPLOY SNMP COMMANDS WITHIN PB
>>   delegate_to: localhost
>>   ios_config:
>>      provider: "{{ provider }}"
>>      commands:
>>        - snmp-server community Test1ng rw
>>
>>
>> (this is not tested)
>>
>> kind regards
>> Pshem
>>
>> On Wed, 22 Nov 2017 at 20:58 SK <[email protected]> wrote:
>>
> Hi Pshem,
>>>
>>> Thank you again for the assistance, the indentation problem is now
>>> solved and the playbook is running, but with errors.  I am back to the
>>> original question.  How does ansible connect to the network device?  Is it
>>> just username/password in the ansible configuration or do I need to setup
>>> any ssh keys on the Cisco network device for the Linux host running ansible
>>> to authenticate to device?
>>>
>>> I ran the playbook command with -vvvv option as well and almost similar
>>> error in addition to "open_shell() returned 255  failed to connect to
>>> control socket"
>>>
>>> Host#ansible-playbook  configs.yml
>>>
>>> PLAY [DEPLOY SNMP CONFIGURATIONS]
>>> ************************************************************************************************************************************************************************************************************
>>>
>>> TASK [configure provider]
>>> ********************************************************************************************************************************************************************************************************************
>>> ok: [sltnrmgmt]
>>>
>>> TASK [DEPLOY SNMP COMMANDS WITHIN PB]
>>> ********************************************************************************************************************************************************************************************************
>>> *fatal: [sltnrmgmt]: FAILED! => {"changed": false, "failed": true,
>>> "msg": "unable to open shell. Please see:
>>> https://docs.ansible.com/ansible/network_debug_troubleshooting.html#unable-to-open-shell
>>> <https://docs.ansible.com/ansible/network_debug_troubleshooting.html#unable-to-open-shell>",
>>> "rc": 255}*
>>>         to retry, use: --limit @/etc/ansible/configs.retry
>>>
>>> PLAY RECAP
>>> ***********************************************************************************************************************************************************************************************************************************
>>> sltnrmgmt      : ok=1    changed=0    unreachable=0    failed=1
>>>
>>>
>>>
>>>
>>> On Tuesday, November 21, 2017 at 3:31:43 PM UTC+8, Pshem Kowalczyk wrote:
>>>
>>>> Now the issue is caused by indentation:
>>>>
>>>> - name: configure provider
>>>>    set_fact:
>>>>
>>>> set_fact must start at the same position as 'name' above it.
>>>>
>>>> kind regards
>>>> Pshem
>>>>
>>>>
>>>> On Tue, 21 Nov 2017 at 18:39 SK <[email protected]> wrote:
>>>>
>>> Thank you for the suggestion about dash before name.  I have updated
>>>>> that and still receive the same error.  The error is pointing towards
>>>>> set_fact. I will take a look into text editors for YAML.
>>>>>
>>>>> ansible-playbook -vvvv configs.yml
>>>>> Using /etc/ansible/ansible.cfg as config file
>>>>> ERROR! Syntax Error while loading YAML.
>>>>>
>>>>>
>>>>> The error appears to have been in '/etc/ansible/configs.yml': line 12,
>>>>> column 8, but may
>>>>> be elsewhere in the file depending on the exact syntax problem.
>>>>>
>>>>> The offending line appears to be:
>>>>>
>>>>>       - name: configure provider
>>>>>        set_fact:
>>>>>        ^ here
>>>>>
>>>>>
>>>>> On Friday, November 17, 2017 at 5:16:24 PM UTC+8, Pshem Kowalczyk
>>>>> wrote:
>>>>>
>>>>>> Hi,
>>>>>>
>>>>>> You need a space between the dash '-' and 'name:' in the task list.
>>>>>> I suggest you find a text editor that supports YAML validation to
>>>>>> make your life easier.
>>>>>>
>>>>>> kind regards
>>>>>> Pshem
>>>>>>
>>>>>>
>>>>>>
>>>>>> On Fri, 17 Nov 2017 at 20:42 SK <[email protected]> wrote:
>>>>>>
>>>>> Hi,
>>>>>>>
>>>>>>> I am using Ansible for the first time to test basic commands on
>>>>>>> Network devices.  When I run the playbook, I am encountering errors even
>>>>>>> though the configuration looks normal.  Below is the OS of my source
>>>>>>> machine where Ansible is installed:
>>>>>>>
>>>>>>> CentOS Linux release 7.3.1611 (Core)
>>>>>>>
>>>>>>> My ansible version is below:
>>>>>>>
>>>>>>> ansible 2.3.2.0
>>>>>>>   config file = /etc/ansible/ansible.cfg
>>>>>>>   configured module search path = Default w/o overrides
>>>>>>>   python version = 2.7.5 (default, Nov  6 2016, 00:28:07) [GCC 4.8.5
>>>>>>> 20150623 (Red Hat 4.8.5-11)]
>>>>>>>
>>>>>>> the config.yml file I am using to test is below:
>>>>>>>
>>>>>>> ---
>>>>>>>   - name: DEPLOY SNMP CONFIGURATIONS
>>>>>>>     hosts: mgmt
>>>>>>>     gather_facts: False
>>>>>>>     connection: local
>>>>>>>     vars_files:
>>>>>>>     - creds.yml
>>>>>>>
>>>>>>>     tasks:
>>>>>>>
>>>>>>>       -name: configure provider
>>>>>>>        set_fact:
>>>>>>>          provider:
>>>>>>>            username: "{{username}}"
>>>>>>>            password: "{{password}}"
>>>>>>>            host: "{{inventory_hostname}}"
>>>>>>>
>>>>>>>       - name: DEPLOY SNMP COMMANDS WITHIN PB
>>>>>>>         ios_config:
>>>>>>>           commands:
>>>>>>>             - snmp-server community Test1ng rw
>>>>>>>
>>>>>>> The content of creds.yml file is below:
>>>>>>>
>>>>>>> username: xxxxx
>>>>>>> password: xxxxx
>>>>>>>
>>>>>>> grep inventory ansible.cfg
>>>>>>> inventory      = /etc/ansible/inventory
>>>>>>>
>>>>>>> The content of the inventory file is below
>>>>>>> [mgmt]
>>>>>>> sltnrmgmt
>>>>>>>
>>>>>>> Error message I am noticing:
>>>>>>>
>>>>>>> ansible-playbook -vvvv configs.yml
>>>>>>> Using /etc/ansible/ansible.cfg as config file
>>>>>>> ERROR! Syntax Error while loading YAML.
>>>>>>>
>>>>>>>
>>>>>>> The error appears to have been in '/etc/ansible/configs.yml': line
>>>>>>> 12, column 16, but may
>>>>>>> be elsewhere in the file depending on the exact syntax problem.
>>>>>>>
>>>>>>> The offending line appears to be:
>>>>>>>
>>>>>>>       -name: configure provider
>>>>>>>        set_fact:
>>>>>>>                ^ here
>>>>>>>
>>>>>>> *The set_fact seems to be defined the way it should be.  Appreciate
>>>>>>> any help on this.*
>>>>>>>
>>>>>>> Other details I am yet to figure out:
>>>>>>>
>>>>>>> How does Ansible communicate with Network devices by default in
>>>>>>> version 2.3?  Do I need to setup any SSH keys on the Cisco Network 
>>>>>>> device?
>>>>>>>
>>>>>>> --
>>>>>>> You received this message because you are subscribed to the Google
>>>>>>> Groups "Ansible Project" group.
>>>>>>>
>>>>>> To unsubscribe from this group and stop receiving emails from it,
>>>>>>> send an email to [email protected].
>>>>>>> To post to this group, send email to [email protected].
>>>>>>
>>>>>>
>>>>>>> To view this discussion on the web visit
>>>>>>> https://groups.google.com/d/msgid/ansible-project/a58e6bb6-4e54-4c3c-94cd-faabddad33d2%40googlegroups.com
>>>>>>> <https://groups.google.com/d/msgid/ansible-project/a58e6bb6-4e54-4c3c-94cd-faabddad33d2%40googlegroups.com?utm_medium=email&utm_source=footer>
>>>>>>> .
>>>>>>> For more options, visit https://groups.google.com/d/optout.
>>>>>>>
>>>>>> --
>>>>> You received this message because you are subscribed to the Google
>>>>> Groups "Ansible Project" group.
>>>>> To unsubscribe from this group and stop receiving emails from it, send
>>>>> an email to [email protected].
>>>>> To post to this group, send email to [email protected].
>>>>>
>>>> To view this discussion on the web visit
>>>>> https://groups.google.com/d/msgid/ansible-project/cc741e12-b495-4ec2-87e3-cff3d63302e8%40googlegroups.com
>>>>> <https://groups.google.com/d/msgid/ansible-project/cc741e12-b495-4ec2-87e3-cff3d63302e8%40googlegroups.com?utm_medium=email&utm_source=footer>
>>>>> .
>>>>> For more options, visit https://groups.google.com/d/optout.
>>>>>
>>>> --
>>> You received this message because you are subscribed to the Google
>>> Groups "Ansible Project" group.
>>> To unsubscribe from this group and stop receiving emails from it, send
>>> an email to [email protected].
>>> To post to this group, send email to [email protected].
>>>
>> To view this discussion on the web visit
>>> https://groups.google.com/d/msgid/ansible-project/6c5915f1-6b83-46a4-beae-53079ecc389b%40googlegroups.com
>>> <https://groups.google.com/d/msgid/ansible-project/6c5915f1-6b83-46a4-beae-53079ecc389b%40googlegroups.com?utm_medium=email&utm_source=footer>
>>> .
>>> For more options, visit https://groups.google.com/d/optout.
>>>
>> --
> You received this message because you are subscribed to the Google Groups
> "Ansible Project" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected].
> To post to this group, send email to [email protected].
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/ansible-project/ea79aeec-838d-47ad-aa4c-a3dbcb087ccd%40googlegroups.com
> <https://groups.google.com/d/msgid/ansible-project/ea79aeec-838d-47ad-aa4c-a3dbcb087ccd%40googlegroups.com?utm_medium=email&utm_source=footer>
> .
> For more options, visit https://groups.google.com/d/optout.
>

-- 
You received this message because you are subscribed to the Google Groups 
"Ansible Project" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/ansible-project/CAEaZiRVYigjC12OTQ7O%2BzWqLhACkSPy5gxoYB56NhGccdZcQsw%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to