openssl_certificate: update for #54298 (state=absent fix) (#54353)

* Update for #54298: Certificate is abstract, so instantiating doesn't work.

* Add test for removal.
This commit is contained in:
Felix Fontein 2019-03-26 16:09:54 +01:00 committed by John R Barker
commit 5bb5c9d295
3 changed files with 60 additions and 2 deletions

View file

@ -691,6 +691,14 @@ class Certificate(crypto_utils.OpenSSLObject):
return True
class CertificateAbsent(Certificate):
def __init__(self, module):
super(CertificateAbsent, self).__init__(module, 'cryptography') # backend doesn't matter
def generate(self, module):
pass
def dump(self, check_mode=False):
# Use only for absent
@ -1684,8 +1692,7 @@ def main():
)
if module.params['state'] == 'absent':
# backend doesn't matter
certificate = Certificate(module, 'cryptography')
certificate = CertificateAbsent(module)
else:
if module.params['provider'] != 'assertonly' and module.params['csr_path'] is None: