community.network.ce_vlan – Manages VLAN resources and attributes on Huawei CloudEngine switches.
Note
This plugin is part of the community.network collection (version 1.3.0).
To install it use: ansible-galaxy collection install community.network.
To use it in a playbook, specify: community.network.ce_vlan.
Synopsis
- Manages VLAN configurations on Huawei CloudEngine switches.
 
Parameters
| Parameter | Choices/Defaults | Comments | 
|---|---|---|
|   description    string    |    Specify VLAN description, minimum of 1 character, maximum of 80 characters.   |  |
|   name    string    |    Name of VLAN, minimum of 1 character, maximum of 31 characters.   |  |
|   state    string    |   
  |    Manage the state of the resource.   |  
|   vlan_id    string    |    Single VLAN ID, in the range from 1 to 4094.   |  |
|   vlan_range    string    |    Range of VLANs such as   2-10 or 2,5,10-15, etc. |  
Notes
Note
- This module requires the netconf system service be enabled on the remote device being managed.
 - Recommended connection is 
netconf. - This module also works with 
localconnections for legacy playbooks. 
Examples
- name: Vlan module test
  hosts: cloudengine
  connection: local
  gather_facts: no
  vars:
    cli:
      host: "{{ inventory_hostname }}"
      port: "{{ ansible_ssh_port }}"
      username: "{{ username }}"
      password: "{{ password }}"
      transport: cli
  tasks:
  - name: Ensure a range of VLANs are not present on the switch
    community.network.ce_vlan:
      vlan_range: "2-10,20,50,55-60,100-150"
      state: absent
      provider: "{{ cli }}"
  - name: Ensure VLAN 50 exists with the name WEB
    community.network.ce_vlan:
      vlan_id: 50
      name: WEB
      state: absent
      provider: "{{ cli }}"
  - name: Ensure VLAN is NOT on the device
    community.network.ce_vlan:
      vlan_id: 50
      state: absent
      provider: "{{ cli }}"
   Return Values
Common return values are documented here, the following are the fields unique to this module:
| Key | Returned | Description | 
|---|---|---|
|   changed    boolean    |  always |   check to see if a change was made on the device  Sample:  True   |  
|   end_state    dictionary    |  always |   k/v pairs of the VLAN after executing module or null when using vlan_range  Sample:  {'description': 'vlan for app', 'name': 'VLAN_APP', 'vlan_id': '20'}   |  
|   end_state_vlans_list    list / elements=string    |  always |   list of VLANs after the module is executed  Sample:  ['1', '2', '3', '4', '5', '20', '100']   |  
|   existing    dictionary    |  always |   k/v pairs of existing vlan or null when using vlan_range  Sample:  {'description': '', 'name': 'VLAN_APP', 'vlan_id': '20'}   |  
|   existing_vlans_list    list / elements=string    |  always |   list of existing VLANs on the switch prior to making changes  Sample:  ['1', '2', '3', '4', '5', '20']   |  
|   proposed    dictionary    |  always |   k/v pairs of parameters passed into module (does not include vlan_id or vlan_range)  Sample:  {'description': 'vlan for app', 'name': 'VLAN_APP', 'vlan_id': '20'}   |  
|   proposed_vlans_list    list / elements=string    |  always |   list of VLANs being proposed  Sample:  ['100']   |  
|   updates    list / elements=string    |  always |   command string sent to the device  Sample:  ['vlan 20', 'name VLAN20']   |  
Authors
- QijunPan (@QijunPan)
 
    © 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
    https://docs.ansible.com/ansible/2.10/collections/community/network/ce_vlan_module.html