4040 - Object name.
4141 type: str
4242 required: True
43- machines :
43+ machines_list :
4444 description:
4545 - Machines that can access the system.
4646 type: list
5959 description:
6060 - When source is "Active Directory" use "base-dn" to refine the query in AD database.
6161 type: str
62+ machines:
63+ description:
64+ - Any or All Identified.
65+ type: str
66+ choices: ['any', 'all identified']
6267 networks:
6368 description:
6469 - Collection of Network objects identified by the name or UID that can access the system.
7378 - Collection of tag identifiers.
7479 type: list
7580 elements: str
76- users :
81+ users_list :
7782 description:
7883 - Users that can access the system.
7984 type: list
9297 description:
9398 - When source is "Active Directory" use "base-dn" to refine the query in AD database.
9499 type: str
100+ users:
101+ description:
102+ - Any or All Identified.
103+ type: str
104+ choices: ['any', 'all identified']
95105 color:
96106 description:
97107 - Color of the object. Should be one of existing colors.
123133EXAMPLES = """
124134- name: add-access-role
125135 cp_mgmt_access_role:
126- machines: all identified
127136 name: New Access Role 1
128137 networks: any
129138 remote_access_clients: any
132141
133142- name: set-access-role
134143 cp_mgmt_access_role:
135- machines: any
144+ users_list:
145+ - source: "Internal User Groups"
146+ selection: usersGroup
136147 name: New Access Role 1
137148 state: present
138- users: all identified
139149
140150- name: delete-access-role
141151 cp_mgmt_access_role:
157167def main ():
158168 argument_spec = dict (
159169 name = dict (type = 'str' , required = True ),
160- machines = dict (type = 'list' , elements = 'dict' , options = dict (
170+ machines_list = dict (type = 'list' , elements = 'dict' , options = dict (
161171 source = dict (type = 'str' ),
162172 selection = dict (type = 'list' , elements = 'str' ),
163173 base_dn = dict (type = 'str' )
164174 )),
175+ machines = dict (type = 'str' , choices = ['any' , 'all identified' ]),
165176 networks = dict (type = 'list' , elements = 'str' ),
166177 remote_access_clients = dict (type = 'str' ),
167178 tags = dict (type = 'list' , elements = 'str' ),
168- users = dict (type = 'list' , elements = 'dict' , options = dict (
179+ users_list = dict (type = 'list' , elements = 'dict' , options = dict (
169180 source = dict (type = 'str' ),
170181 selection = dict (type = 'list' , elements = 'str' ),
171182 base_dn = dict (type = 'str' )
172183 )),
184+ users = dict (type = 'str' , choices = ['any' , 'all identified' ]),
173185 color = dict (type = 'str' , choices = ['aquamarine' , 'black' , 'blue' , 'crete blue' , 'burlywood' , 'cyan' , 'dark green' ,
174186 'khaki' , 'orchid' , 'dark orange' , 'dark sea green' , 'pink' , 'turquoise' , 'dark blue' , 'firebrick' , 'brown' ,
175187 'forest green' , 'gold' , 'dark gold' , 'gray' , 'dark gray' , 'light green' , 'lemon chiffon' , 'coral' , 'sea green' ,
@@ -185,6 +197,18 @@ def main():
185197 module = AnsibleModule (argument_spec = argument_spec , supports_check_mode = True )
186198 api_call_object = 'access-role'
187199
200+ if module .params ["machines_list" ] is not None :
201+ if module .params ["machines" ] is not None :
202+ raise AssertionError ("The use of both 'machines_list' and 'machines' arguments isn't allowed" )
203+ module .params ["machines" ] = module .params ["machines_list" ]
204+ module .params .pop ("machines_list" )
205+
206+ if module .params ["users_list" ] is not None :
207+ if module .params ["users" ] is not None :
208+ raise AssertionError ("The use of both 'users_list' and 'users' arguments isn't allowed" )
209+ module .params ["users" ] = module .params ["users_list" ]
210+ module .params .pop ("users_list" )
211+
188212 result = api_call (module , api_call_object )
189213 module .exit_json (** result )
190214
0 commit comments