Merge "Add support for dellos10 switch configuration"

This commit is contained in:
Zuul 2022-06-10 11:39:21 +00:00 committed by Gerrit Code Review
commit c8b89504e9
9 changed files with 48 additions and 12 deletions

View File

@ -27,6 +27,7 @@
- arista
- dellos6
- dellos9
- dellos10
- dell-powerconnect
- junos
- mellanox
@ -111,7 +112,7 @@
arista_switch_interface_config: "{{ switch_interface_config }}"
- name: Ensure DellOS physical switches are configured
hosts: switches_of_type_dellos6:switches_of_type_dellos9:&switches_in_display_mode_False
hosts: switches_of_type_dellos6:switches_of_type_dellos9:switches_of_type_dellos10:&switches_in_display_mode_False
gather_facts: no
roles:
- role: ssh-known-host

View File

@ -1,10 +1,10 @@
Dell Switch
===========
This role configures Dell switches using the `dellos6` or `dellos9` Ansible
modules. It provides a fairly minimal abstraction of the configuration
interface provided by the `dellos` modules, allowing for application of
arbitrary switch configuration options.
This role configures Dell switches using the `dellos6`, `dellos9`, or
`dellos10` Ansible modules. It provides a fairly minimal abstraction of the
configuration interface provided by the `dellos` modules, allowing for
application of arbitrary switch configuration options.
Requirements
------------
@ -14,7 +14,8 @@ The switches should be configured to allow SSH access.
Role Variables
--------------
`dell_switch_type` is the type of Dell switch. One of `dellos6`, `dellos9`.
`dell_switch_type` is the type of Dell switch. One of `dellos6`, `dellos9`, or
`dellos10`.
`dell_switch_provider` is authentication provider information passed as the
`provider` argument to the `dellos` modules.

View File

@ -1,5 +1,5 @@
---
# Type of Dell switch. One of dellos6, dellos9.
# Type of Dell switch. One of dellos6, dellos9, or dellos10.
dell_switch_type:
# Authentication provider information.

View File

@ -12,3 +12,10 @@
provider: "{{ dell_switch_provider }}"
src: dellos9-config.j2
when: dell_switch_type == 'dellos9'
- name: Ensure DellOS10 switches are configured
local_action:
module: dellos10_config
provider: "{{ dell_switch_provider }}"
src: "{{ lookup('template', 'dellos10-config.j2') }}"
when: dell_switch_type == 'dellos10'

View File

@ -0,0 +1,16 @@
#jinja2: trim_blocks: True,lstrip_blocks: True
{% for line in dell_switch_config %}
{{ line }}
{% endfor %}
{% for interface, config in dell_switch_interface_config.items() %}
interface {{ interface }}
{% if config.description is defined %}
description {{ config.description }}
{% endif %}
{% for line in config.config %}
{{ line }}
{% endfor %}
exit
{% endfor %}

View File

@ -19,6 +19,7 @@ The following switch operating systems are currently supported:
<https://docs.nvidia.com/networking-ethernet-software/cumulus-linux-44/System-Configuration/Network-Command-Line-Utility-NCLU/>`__)
* Dell OS 6
* Dell OS 9
* Dell OS 10
* Dell PowerConnect
* Juniper Junos OS
* Mellanox MLNX OS
@ -213,13 +214,13 @@ default connection parameters used by Ansible:
* ``ansible_user`` is the SSH username.
Dell OS6 and OS9
----------------
Dell OS6, OS9, and OS10
-----------------------
Configuration for these devices is applied using the ``dellos6_config`` and
``dellos9_config`` Ansible modules.
Configuration for these devices is applied using the ``dellos6_config``,
``dellos9_config``, and ``dellos10_config`` Ansible modules.
``switch_type`` should be set to ``dellos6`` or ``dellos9``.
``switch_type`` should be set to ``dellos6``, ``dellos9``, or ``dellos10``.
Provider
^^^^^^^^

View File

@ -0,0 +1,6 @@
---
features:
- |
Adds support for configuring Dell OS10 Switches using the `dellemc.os10
Ansible collection <https://galaxy.ansible.com/dellemc/os10>`__. This is
integrated with the ``kayobe physical network configure`` command.

View File

@ -7,3 +7,4 @@ PyYAML>=3.10.0 # MIT
selinux # MIT
# INI parsing
oslo.config>=5.2.0 # Apache-2.0
paramiko # LGPL

View File

@ -3,6 +3,9 @@ collections:
- name: https://opendev.org/openstack/ansible-collection-kolla
type: git
version: master
- name: dellemc.os10
version: 1.1.1
roles:
- src: ahuffman.resolv
version: 1.3.1