|
24 | 24 |
|
25 | 25 | extends_documentation_fragment:
|
26 | 26 | - community.mongodb.login_options
|
| 27 | + - community.mongodb.ssl_options |
27 | 28 |
|
28 | 29 | options:
|
29 | 30 | mongo_cmd:
|
|
195 | 196 | __metaclass__ = type
|
196 | 197 |
|
197 | 198 | from ansible_collections.community.mongodb.plugins.module_utils.mongodb_common import (
|
198 |
| - mongodb_common_argument_spec |
| 199 | + load_mongocnf, mongodb_common_argument_spec |
199 | 200 | )
|
200 | 201 |
|
201 | 202 | from ansible_collections.community.mongodb.plugins.module_utils.mongodb_shell import (
|
|
208 | 209 |
|
209 | 210 |
|
210 | 211 | def main():
|
211 |
| - argument_spec = mongodb_common_argument_spec(ssl_options=False) |
| 212 | + argument_spec = mongodb_common_argument_spec(ssl_options=True) |
212 | 213 | argument_spec.update(
|
213 | 214 | mongo_cmd=dict(type='str', default="mongosh"),
|
214 | 215 | file=dict(type='str', required=False),
|
@@ -267,16 +268,34 @@ def main():
|
267 | 268 |
|
268 | 269 | omit = module.params['omit']
|
269 | 270 |
|
| 271 | + username = module.params['login_user'] |
| 272 | + password = module.params['login_password'] |
| 273 | + |
| 274 | + credentials = load_mongocnf() |
| 275 | + if credentials: |
| 276 | + if not username: |
| 277 | + username = credentials['user'] |
| 278 | + if not password: |
| 279 | + password = credentials['password'] |
| 280 | + |
270 | 281 | args = add_arg_to_cmd(args, "--host", module.params['login_host'], omit=omit)
|
271 | 282 | args = add_arg_to_cmd(args, "--port", module.params['login_port'], omit=omit)
|
272 |
| - args = add_arg_to_cmd(args, "--username", module.params['login_user'], omit=omit) |
273 |
| - args = add_arg_to_cmd(args, "--password", module.params['login_password'], omit=omit) |
| 283 | + args = add_arg_to_cmd(args, "--username", username, omit=omit) |
| 284 | + args = add_arg_to_cmd(args, "--password", password, omit=omit) |
274 | 285 | args = add_arg_to_cmd(args, "--authenticationDatabase", module.params['login_database'], omit=omit)
|
| 286 | + args = add_arg_to_cmd(args, "--authenticationMechanism", module.params['auth_mechanism'], omit=omit) |
275 | 287 | args = add_arg_to_cmd(args, "--eval", module.params['eval'], omit=omit)
|
276 | 288 | args = add_arg_to_cmd(args, "--nodb", None, module.params['nodb'], omit=omit)
|
277 | 289 | args = add_arg_to_cmd(args, "--norc", None, module.params['norc'], omit=omit)
|
278 | 290 | args = add_arg_to_cmd(args, "--quiet", None, module.params['quiet'], omit=omit)
|
279 | 291 |
|
| 292 | + args = add_arg_to_cmd(args, "--tls", None, module.params['ssl'], omit=omit) |
| 293 | + args = add_arg_to_cmd(args, "--tlsAllowInvalidCertificates", None, module.params['ssl_cert_reqs'] in ('CERT_NONE', 'CERT_OPTIONAL'), omit=omit) |
| 294 | + args = add_arg_to_cmd(args, "--tlsCAFile", module.params['ssl_ca_certs'], omit=omit) |
| 295 | + args = add_arg_to_cmd(args, "--tlsCRLFile", module.params['ssl_crlfile'], omit=omit) |
| 296 | + args = add_arg_to_cmd(args, "--tlsCertificateKeyFile", module.params['ssl_keyfile'], omit=omit) |
| 297 | + args = add_arg_to_cmd(args, "--tlsCertificateKeyFilePassword", module.params['ssl_pem_passphrase'], omit=omit) |
| 298 | + |
280 | 299 | additional_args = module.params['additional_args']
|
281 | 300 | if additional_args is not None:
|
282 | 301 | for key, value in additional_args.items():
|
|
0 commit comments