ansible-collections/cisco.ios

Breaking Change with ansible.netcomm v6.1.2

happly opened this issue · 5 comments

SUMMARY

Please refer to ansible-collections/ansible.netcommon#639 for the full details of the issue.

ansible.netcommon v6.1.2 which gets pulled in as a dependency causes at least cisco.ios.ios_interfaces to break.

pinning ansible.netcommon to v6.1.1 avoids the breaking change.

I'm not quite sure whether the fix is an upstream/downstream one, so I created a Bug Report here too as well as to document a work around for anyone experiencing the same issue.

ISSUE TYPE
  • Bug Report
COMPONENT NAME
ANSIBLE VERSION

COLLECTION VERSION

CONFIGURATION

OS / ENVIRONMENT
STEPS TO REPRODUCE
EXPECTED RESULTS
ACTUAL RESULTS
{
  "module_stdout": "",
  "module_stderr": "edit_config() got an unexpected keyword argument 'err_responses'",
  "msg": "MODULE FAILURE\nSee stdout/stderr for the exact error",
  "_ansible_no_log": false,
  "changed": false
}

@happly This has been fixed with ansible-collections/ansible.netcommon#640. We will do a netcommon release soon.

Same goes for cisco.ios.ios_ntp_global and cisco.ios.ios_acls.

Here's an example of a NTP playbook that crashes:

---
- name: test ntp
  gather_facts: false
  hosts: "{{ target }}"
  tasks:
    - name: test
      cisco.ios.ios_ntp_global:
        config:
          access_group:
            peer:
            - access_list: ntp-peer
            query_only:
            - access_list: ntp-serve
            serve_only:
            - access_list: ntp-serve
          logging: true
          servers:
          - server: 192.158.1.38
            prefer: true
          - server: 192.158.1.39
          - server: 192.158.1.40
          - server: 192.158.1.41
          - server: 192.158.1.42
          - server: 192.158.1.43
          - server: 192.158.1.44
          - server: 192.158.1.45
          source: Vlan1337
        state: replaced
fatal: [switch01]: FAILED! => changed=false
  module_stderr: Cliconf.edit_config() got an unexpected keyword argument 'err_responses'
  module_stdout: ''
  msg: |-
    MODULE FAILURE
    See stdout/stderr for the exact error

Edit: Commented this right as you updated. Thanks for the update @NilashishC

@happly @jorgenspange we have just released v6.1.3 of ansible.netcommon, could you please update? This should fix this issue for you. Thanks!

Confirming that 6.1.3 resolves the issue.

Same problem with cisco.ios.ios_service, 6.1.3 doesn't resolve the issue but a downgrade to 6.1.1 does.

- name: Configure services
  cisco.ios.ios_service:
    config:
      timestamps:
        - msg: debug
          enable: true
          timestamp: uptime
        - msg: log
          enable: true
          timestamp: uptime
      pad: false
      password_encryption: true
fatal: [switch.test]: FAILED! => {"changed": false, "module_stderr": "Cliconf.edit_config() got an unexpected keyword argument 'err_responses'", "module_stdout": "", "msg": "MODULE FAILURE\nSee stdout/stderr for the exact error"}

thanks for your help !