As the previous post discussed, using the API directly through Ansible was an adequate initial step to configuring a users role within the NSX Manager. The next logical step was to include this functionality directly inside the upstream NSX Ansible module.
After an initial commit yesterday afternoon, I received some feedback from the community and posted a new update to the module today that is better inline with Ansible best practices and idempotency.
The module is now available in the master
branch on GitHub.
The module can be used inside an Ansible role or playbook with the following code:
1 --- 2 - hosts: all 3 connection: local 4 gather_facts: False 5 6 tasks: 7 - name: Configure NSX Manager roles 8 nsx_manager_roles: 9 nsxmanager_spec: "{{ nsxmanager_spec }}" 10 state: present 11 name: "{{ nsx_uid }}" 12 is_group: true 13 role_type: "{{ nsx_role }}" 14 register: add_nsx_role
The Ansible task can specify a state
of present
to add a new user and assign a role, modify
to change the role of an existing user or group, and absent
to remove a user or group.
If you run into an issues using the module, please reach out to me over Twitter or comment directly in the Issues
section on GitHub for NSX Ansible.
Enjoy!