7b8abfb669
When running `kayobe physical network configure --check` against Juniper switches, Kayobe may fail with the following error: Failed to import the required Python library (ncclient) This is because the ncclient installation task is skipped by check mode. Change-Id: I643f54a67edfe22a3fd5c86f157bd1246d617399
29 lines
1.0 KiB
YAML
29 lines
1.0 KiB
YAML
---
|
|
# The NETCONF client ncclient is required. This must be installed on the
|
|
# Ansible control host where the ansible-connection subprocess is executed.
|
|
- name: Ensure python dependencies are installed
|
|
vars:
|
|
# NOTE(mgoddard): 0.6.7 includes a fix for host key checking:
|
|
# https://github.com/ncclient/ncclient/issues/302.
|
|
ncclient_version: ">=0.6.7,<0.7.0"
|
|
local_action:
|
|
module: pip
|
|
name: "ncclient{{ ncclient_version }}"
|
|
virtualenv: "{{ lookup('env', 'VIRTUAL_ENV') | default(omit, true) }}"
|
|
become: "{{ lookup('env', 'VIRTUAL_ENV') == None }}"
|
|
check_mode: false
|
|
run_once: true
|
|
|
|
- name: Ensure Juniper switches are configured
|
|
local_action:
|
|
module: junos_config
|
|
provider: "{{ junos_switch_provider }}"
|
|
src: "{{ junos_switch_src }}"
|
|
src_format: "{{ junos_switch_config_format }}"
|
|
vars:
|
|
junos_switch_config_format_to_src:
|
|
set: junos-config-set.j2
|
|
text: junos-config.j2
|
|
json: junos-config.json.j2
|
|
junos_switch_src: "{{ junos_switch_config_format_to_src[junos_switch_config_format] }}"
|