def main(): argument_spec = get_csr_argument_spec() argument_spec.argument_spec.update(dict( state=dict(type='str', default='present', choices=['absent', 'present']), force=dict(type='bool', default=False), path=dict(type='path', required=True), backup=dict(type='bool', default=False), return_content=dict(type='bool', default=False), )) argument_spec.required_if.extend([('state', 'present', rof, True) for rof in argument_spec.required_one_of]) argument_spec.required_one_of = [] module = argument_spec.create_ansible_module( add_file_common_args=True, supports_check_mode=True, ) base_dir = os.path.dirname(module.params['path']) or '.' if not os.path.isdir(base_dir): module.fail_json(name=base_dir, msg='The directory %s does not exist or the file is not a directory' % base_dir) backend = module.params['select_crypto_backend'] backend, module_backend = select_backend(module, backend) try: csr = CertificateSigningRequestModule(module, module_backend) if module.params['state'] == 'present': csr.generate(module) else: csr.remove(module) result = csr.dump() module.exit_json(**result) except OpenSSLObjectError as exc: module.fail_json(msg=to_native(exc))
def main(): argument_spec = get_csr_argument_spec() argument_spec.argument_spec.update(dict(content=dict(type='str'), )) module = argument_spec.create_ansible_module(supports_check_mode=True, ) backend = module.params['select_crypto_backend'] backend, module_backend = select_backend(module, backend) try: csr = CertificateSigningRequestModule(module, module_backend) csr.generate(module) result = csr.dump() module.exit_json(**result) except OpenSSLObjectError as exc: module.fail_json(msg=to_native(exc))