hooks/test_ptr_records.py: introduce
This commit is contained in:
parent
a0f5f80a16
commit
7ea760d5eb
2 changed files with 19 additions and 0 deletions
|
|
@ -82,6 +82,7 @@ def dns(metadata):
|
|||
'dns': dns,
|
||||
}
|
||||
|
||||
|
||||
@metadata_reactor.provides(
|
||||
'letsencrypt/domains',
|
||||
)
|
||||
|
|
|
|||
18
hooks/test_ptr_records.py
Normal file
18
hooks/test_ptr_records.py
Normal file
|
|
@ -0,0 +1,18 @@
|
|||
from subprocess import check_output
|
||||
|
||||
|
||||
def test_node(repo, node, **kwargs):
|
||||
for node in repo.nodes_in_group('mailserver'):
|
||||
domain = node.metadata.get('mailserver/hostname')
|
||||
expected_ptr_record = f"{domain}."
|
||||
expected_a_record = node.hostname
|
||||
|
||||
# check A record
|
||||
actual_a_record = check_output(['dig', '+short', 'A', domain, '@9.9.9.9'], text=True).strip()
|
||||
if actual_a_record != expected_a_record:
|
||||
raise AssertionError(f"A record for {expected_a_record} on node {node.name} is {actual_a_record}, expected {expected_a_record}")
|
||||
|
||||
# check otr record
|
||||
actual_ptr_record = check_output(['dig', '+short', '-x', expected_a_record, '@9.9.9.9'], text=True).strip()
|
||||
if actual_ptr_record != expected_ptr_record:
|
||||
raise AssertionError(f"PTR record for {expected_a_record} on node {node.name} is {actual_ptr_record}, expected {expected_ptr_record}")
|
||||
Loading…
Reference in a new issue