juniper_junos_software安装软件,但由于“无处理程序”而导致任务失败。

时间:2018-08-02 21:46:19

标签: ansible pyez

我正在尝试使用juniper_junos_software模块在SRX550上安装12.3X48-D70,并且在成功安装并重新启动设备后,由于“无处理程序”错误,任务返回失败。

剧本:

@ManyToOne(fetch = FetchType.LAZY, cascade = CascadeType.ALL)
private Task task;

@OneToMany(mappedBy = "task")
private List<Task> tasks;

详细输出:

- name: Upgrade Juniper devices
  juniper_junos_software:
    host: "{{ inventory_hostname }}"
    local_package: "junos-srxsme-12.3X48-D70.3-domestic.tgz"
    reboot: yes
    version: "12.3X48-D70.3"
    user: user
    passwd: "{{ secret }}"
    port: 22
  ignore_errors: True
  register: junos_upgrade
  when: junos_before|success

设备启动重新引导并脱机后不久,就会显示错误。其他的杜松模块都没有这个问题。

我正在运行Ansible 2.4.2,junos-eznc 2.1.8,python 2.7.5和Juniper.junos角色是2.1.0

1 个答案:

答案 0 :(得分:1)

有人已经向Junos的开发人员报告了such problem,看来您被https://github.com/Juniper/ansible-junos-stdlib/pull/361https://github.com/Juniper/py-junos-eznc/issues/651的bug击中了。

然而,String prevRteCd = null; String rteCd = null; while(result.next()) { prevRteCd = rteCd; rteCd = result.getString("Rte_Cd"); if(prevRteCd! =null && !prevRteCd.equals(rteCd)) { itChanged(prevRteCd, rteCd); } } (您拥有的那个)的2.1.0版本中提供了此修复程序,因此我不清楚这是相同的错误还是紧密相关的错误。

解决此问题的最佳方法是与开发人员联系,以在Github上报告该问题,以确认这是同一错误还是另一错误,并将其修复。