Add option to enter admin configuration mode in iosxr_user (#51430)
* Add admin mode to iosxr_user Signed-off-by: NilashishC <nilashishchakraborty8@gmail.com> * Update docs for admin option Signed-off-by: NilashishC <nilashishchakraborty8@gmail.com> * Fix review comment Signed-off-by: NilashishC <nilashishchakraborty8@gmail.com>
This commit is contained in:
parent
f0f23378db
commit
2f0c666b5b
2 changed files with 23 additions and 1 deletions
|
@ -83,6 +83,14 @@ options:
|
|||
`admin` user and the current defined set of users.
|
||||
type: bool
|
||||
default: false
|
||||
admin:
|
||||
description:
|
||||
- Enters into administration configuration mode for making config
|
||||
changes to the device.
|
||||
- Applicable only when using network_cli transport
|
||||
type: bool
|
||||
default: false
|
||||
version_added: "2.8"
|
||||
state:
|
||||
description:
|
||||
- Configures the state of the username definition
|
||||
|
@ -123,6 +131,12 @@ EXAMPLES = """
|
|||
name: ansible
|
||||
configured_password: mypassword
|
||||
state: present
|
||||
- name: create a new user in admin configuration mode
|
||||
iosxr_user:
|
||||
name: ansible
|
||||
configured_password: mypassword
|
||||
admin: True
|
||||
state: present
|
||||
- name: remove all users except admin
|
||||
iosxr_user:
|
||||
purge: True
|
||||
|
@ -478,7 +492,8 @@ class CliConfiguration(ConfigBase):
|
|||
self._result['commands'] = []
|
||||
if commands:
|
||||
commit = not self._module.check_mode
|
||||
diff = load_config(self._module, commands, commit=commit)
|
||||
admin = self._module.params['admin']
|
||||
diff = load_config(self._module, commands, commit=commit, admin=admin)
|
||||
if diff:
|
||||
self._result['diff'] = dict(prepared=diff)
|
||||
|
||||
|
@ -638,6 +653,8 @@ def main():
|
|||
configured_password=dict(no_log=True),
|
||||
update_password=dict(default='always', choices=['on_create', 'always']),
|
||||
|
||||
admin=dict(type='bool', default=False),
|
||||
|
||||
public_key=dict(),
|
||||
public_key_contents=dict(),
|
||||
|
||||
|
|
|
@ -87,3 +87,8 @@ class TestIosxrUserModule(TestIosxrModule):
|
|||
set_module_args(dict(name='ansible', configured_password='test', update_password='always'))
|
||||
result = self.execute_module(changed=True)
|
||||
self.assertEqual(result['commands'], ['username ansible secret test'])
|
||||
|
||||
def test_iosxr_user_admin_mode(self):
|
||||
set_module_args(dict(name='ansible-2', configured_password='test-2', admin=True))
|
||||
result = self.execute_module(changed=True)
|
||||
self.assertEqual(result['commands'], ['username ansible-2', 'username ansible-2 secret test-2'])
|
||||
|
|
Loading…
Reference in a new issue