Skip to content

Commit c45c9bd

Browse files
nkangdatabricksandrewmchen
authored andcommitted
[PLAT-10247] Display Azure KeyVault URL for AKV-backed secret scope (#265)
* secrets akv * style
1 parent 7c58f62 commit c45c9bd

2 files changed

Lines changed: 18 additions & 4 deletions

File tree

databricks_cli/secrets/cli.py

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@
3434
from databricks_cli.version import print_version_callback, version
3535

3636

37-
SCOPE_HEADER = ('Scope', 'Backend')
37+
SCOPE_HEADER = ('Scope', 'Backend', 'KeyVault URL')
3838
SECRET_HEADER = ('Key name', 'Last updated')
3939
ACL_HEADER = ('Principal', 'Permission')
4040
DASH_MARKER = '# ' + '-' * 70 + '\n'
@@ -64,7 +64,11 @@ def create_scope(api_client, scope, initial_manage_principal):
6464
def _scopes_to_table(scopes_json):
6565
ret = []
6666
for s in scopes_json.get('scopes', []):
67-
ret.append((truncate_string(s['name']), s['backend_type']))
67+
if "keyvault_metadata" in s:
68+
url = s["keyvault_metadata"]["dns_name"]
69+
ret.append((truncate_string(s['name']), s['backend_type'], url))
70+
else:
71+
ret.append((truncate_string(s['name']), s['backend_type'], "N/A"))
6872
return ret
6973

7074

tests/secrets/test_cli.py

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -62,7 +62,14 @@ def test_delete_scope(secrets_api_mock):
6262
LIST_SCOPES_RETURN = {
6363
"scopes": [{
6464
"name": "my-scope",
65-
"backend_type": "databricks"
65+
"backend_type": "DATABRICKS"
66+
}, {
67+
"name": "akv-scope",
68+
"backend_type": "AZURE_KEYVAULT",
69+
"keyvault_metadata": {
70+
"resource_id": "/subscriptions/.../resource_id",
71+
"dns_name": "https://akvscope.vault.azure.net/"
72+
}
6673
}]
6774
}
6875

@@ -74,7 +81,10 @@ def test_list_scope(secrets_api_mock):
7481
runner = CliRunner()
7582
runner.invoke(cli.list_scopes)
7683
assert echo_mock.call_args[0][0] == \
77-
tabulate([('my-scope', 'databricks')], headers=SCOPE_HEADER)
84+
tabulate([
85+
('my-scope', 'DATABRICKS', 'N/A'),
86+
('akv-scope', 'AZURE_KEYVAULT', 'https://akvscope.vault.azure.net/')],
87+
headers=SCOPE_HEADER)
7888

7989

8090
KEY = 'test_key'

0 commit comments

Comments
 (0)