Skip to content

Commit 83b8751

Browse files
mgr/smb: add tests applying & showing tls credential resources
Signed-off-by: John Mulligan <[email protected]>
1 parent 7a7cacc commit 83b8751

File tree

1 file changed

+101
-0
lines changed

1 file changed

+101
-0
lines changed

src/pybind/mgr/smb/tests/test_smb.py

Lines changed: 101 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -828,3 +828,104 @@ def test_apply_password_filter_in_out(tmodule):
828828
assert len(out['values']['users']) == 2
829829
assert out['values']['users'][0]['password'] == 'abracadabra'
830830
assert out['values']['users'][1]['password'] == 'xyzzy'
831+
832+
833+
cert1 = """
834+
-----BEGIN CERTIFICATE-----
835+
MIIGFjCCA/6gAwIBAgIUZLL4QTx5ESBYQYS761DcZ7S1c24wDQYJKoZIhvcNAQEN
836+
BQAwgYgxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJNQTEPMA0GA1UEBwwGTG93ZWxs
837+
MR8wHQYDVQQKDBZCaXJjaCBTdHJlZXQgQ29tcHV0aW5nMRYwFAYDVQQDDA1Kb2hu
838+
IE11bGxpZ2FuMSIwIAYJKoZIhvcNAQkBFhNqb2hubUBhc3luY2hyb25vLnVzMB4X
839+
DTI1MDYzMDE5MzAwM1oXDTI2MDcyNDE5MzAwM1owbjELMAkGA1UEBhMCVVMxCzAJ
840+
BgNVBAgMAk1BMQ8wDQYDVQQHDAZMb3dlbGwxHzAdBgNVBAoMFkJpcmNoIFN0cmVl
841+
dCBDb21wdXRpbmcxIDAeBgNVBAMMF0ROUzpjZXBoMC5jeC5mZG9wZW4ubmV0MIIC
842+
IjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEApZYqA73a8ojX7QsCJHiXh0J2
843+
KKEqDU6k0Yjoie9raYCP/aaiJpffSjhKl1rYuIqjBUG5D0tdT3sRw3m96Nw6gkhM
844+
5J8r02muQpJqmzPmfAn75IVjRkJ9OsHyS1Mf9GADTfv3pMBkwqqrGb8NxWQXeS4s
845+
PLPBv8SI4ozFNwwlEvZ0kesI4Qf0VRZ1ieSzAArjDWWFX8kURMt6UzN8opnxGvzT
846+
cfY4J0iKCYBK6Vqmf/OrMg3IjDojKaQqBlMPAQURyiYeF1hfDrcqGQC6S4Iz5mDt
847+
ZsMywFQFlEhkWkhJdMMkY4bqvn01BKXl3WY0HY5pPslRWWfj4aQeBb8DFH+rFeTf
848+
I/S02ECE/SKc+O7JJa23HtzJspiaK/MV6XQUDDWYdFQEfLhQb3y3RuYJ7C0WZDMc
849+
EmJHuB1D0/RS5xWiukTyRbOFf0Dbzn07PPUycE5BaCJ/ekwpMBvYQ6uCZq19CRAE
850+
v5j7oyC1+rjOCKpTBPGCFWbODJmf5LrfcZLX/VtR+vu3a28OKmbxvdQ3uzLPwjFx
851+
szzsJRn4URyI5hxl3K0w5Yptd/mvdnSeQTnX9TmMFE/G+EdlGxZtc695mOvWX6gK
852+
ezwSqwtxVAZ18x/we6NZUkeuaC4+Xec8HoowHYmfRUH1P69ZXAuKKSIZizuvDYIF
853+
tfcDeDY6s0wp3SKQ1bUCAwEAAaOBkDCBjTAJBgNVHRMEAjAAMEAGA1UdEQQ5MDeC
854+
E2NlcGgwLmN4LmZkb3Blbi5uZXSCGnJjLnNtYi5jZXBoMC5jeC5mZG9wZW4ubmV0
855+
hwTAqEzIMB0GA1UdDgQWBBR9bOCw+6pMkeS1HnAuCFhmoM7NPzAfBgNVHSMEGDAW
856+
gBRsCQk9OUjWypZgtyH+5LxzZ4eBJDANBgkqhkiG9w0BAQ0FAAOCAgEAF6u76+6C
857+
JkQEqBSYU09JQT8JDWX3AUZDXoCIpv2F1UD26ueAIaYD1dkpKDFg0UOOBwC7TiR9
858+
uf210HtY5ic++Bm5xavhRk65FGwypv65SqjfehqTiRU+b0my0LG2OaAVrUcKWdbn
859+
ZvwiBr1I7Wyn0MV1Ko7sqZh0j7Y4kPXCa2D8QG1inr9YBQQpid7CUwNeS5eYAVbP
860+
gI4zTYKKvJMYPr4lTqsweCDOpctC7fwVb43XGTRVhVXQdOux9n5emROx/Ok0d2xX
861+
mi5rlUfMxlrWjs7KK336x8z31i3w+1xc1ESaF0eP1byikvpbYBN1dEYahilMaSVl
862+
3IpDYCwCFMU+ZZUZdqVyQQL+lTxqsc2orzzFgfv594hkEdYNlJ/z/f1b8idYk3g1
863+
WTrixgd+KYcHoCCS8pHFVs8lankBqQGMckZmIyzfP7RxY43j6XTV+4791O4o0waZ
864+
I5AwhUmgJj7G2Mp1jacMlHtZPqC0iDlci5fh6KpzVjPzrqA2sIN+9yJAlX8teJnC
865+
adKnxoY+AbqwLLTHfGx/W0W8jUxmea0eYufgUqxoQv5qdREafcuchGM36bKukVYb
866+
L3pqleYyvguwxxcc2MJvXjgAiZ5EsNJ2TCr4Mt0mZP406BhEQxfvpBSdRXTiHGJ/
867+
KNDwOknnnEhdXshW5M8G8ZhkahG8YABHTBw=
868+
-----END CERTIFICATE-----
869+
"""
870+
871+
872+
def test_tls_credential(tmodule):
873+
_example_cfg_1(tmodule)
874+
875+
txt = json.dumps(
876+
{
877+
'resource_type': 'ceph.smb.tls.credential',
878+
'tls_credential_id': 'tc1',
879+
'intent': 'present',
880+
'credential_type': 'cert',
881+
'value': cert1,
882+
}
883+
)
884+
885+
rg = tmodule.apply_resources(txt)
886+
assert rg.success, rg.to_simplified()
887+
ts = rg.to_simplified()
888+
assert len(ts['results']) == 1
889+
r = ts['results'][0]['resource']
890+
assert r['resource_type'] == 'ceph.smb.tls.credential'
891+
out = tmodule.show()
892+
res = out.get('resources')
893+
assert res
894+
assert len(res) == 5
895+
clusters = [r for r in res if r['resource_type'] == 'ceph.smb.cluster']
896+
assert len(clusters) == 1
897+
shares = [r for r in res if r['resource_type'] == 'ceph.smb.share']
898+
assert len(shares) == 2
899+
jauths = [r for r in res if r['resource_type'] == 'ceph.smb.join.auth']
900+
assert len(jauths) == 1
901+
tcs = [r for r in res if r['resource_type'] == 'ceph.smb.tls.credential']
902+
assert len(tcs) == 1
903+
assert tcs[0]['credential_type'] == 'cert'
904+
assert tcs[0]['value'] == cert1
905+
906+
907+
def test_tls_credential_yaml_show(tmodule):
908+
_example_cfg_1(tmodule)
909+
910+
txt = json.dumps(
911+
{
912+
'resource_type': 'ceph.smb.tls.credential',
913+
'tls_credential_id': 'tc1',
914+
'intent': 'present',
915+
'credential_type': 'cert',
916+
'value': cert1,
917+
}
918+
)
919+
920+
rg = tmodule.apply_resources(txt)
921+
assert rg.success, rg.to_simplified()
922+
ts = rg.to_simplified()
923+
assert len(ts['results']) == 1
924+
r = ts['results'][0]['resource']
925+
assert r['resource_type'] == 'ceph.smb.tls.credential'
926+
res, body, status = tmodule.show.command(
927+
['ceph.smb.tls.credential'], format='yaml'
928+
)
929+
assert res == 0
930+
body = body.strip()
931+
assert 'value: |' in body

0 commit comments

Comments
 (0)