-
Notifications
You must be signed in to change notification settings - Fork 3.4k
[KeyVault] adding recovery feature commands #3631
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changes from 14 commits
615e050
30c940d
8f4abdf
4d4eb78
8b75082
8b5aef5
c32bb26
8abd1ae
a3d20af
85bbbe3
f7f941e
a531fdc
06d3b0f
a7e2044
7134c92
c43492f
5fef8c6
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -137,6 +137,9 @@ def register_attributes_argument(scope, name, attr_class, create=False, ignore=N | |
| register_cli_argument('keyvault', 'enabled_for_template_deployment', | ||
| help='Allow Resource Manager to retrieve secrets from the vault.', | ||
| **three_state_flag()) | ||
| register_cli_argument('keyvault', 'enable_soft_delete', | ||
| help='Enable vault deletion recovery for the vault, and all contained entities', | ||
|
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I'd recommend shortening the option name for this to "--enable-soft-delete". |
||
| **three_state_flag()) | ||
|
|
||
| register_cli_argument('keyvault create', 'resource_group_name', resource_group_name_type, | ||
| required=True, completer=None, validator=None) | ||
|
|
@@ -164,6 +167,7 @@ def register_attributes_argument(scope, name, attr_class, create=False, ignore=N | |
| help='Space separated list. Possible values: {}'.format( | ||
| certificate_permission_values), arg_group='Permission') | ||
|
|
||
|
|
||
| for item in ['key', 'secret', 'certificate']: | ||
| register_cli_argument('keyvault {}'.format(item), '{}_name'.format(item), | ||
| options_list=('--name', '-n'), help='Name of the {}.'.format(item), | ||
|
|
||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -17,17 +17,22 @@ | |
|
|
||
| cli_command(__name__, 'keyvault create', custom_path.format('create_keyvault'), | ||
| keyvault_client_vaults_factory) | ||
| cli_command(__name__, 'keyvault recover', custom_path.format('recover_keyvault'), | ||
| keyvault_client_vaults_factory) | ||
| cli_command(__name__, 'keyvault list', custom_path.format('list_keyvault'), | ||
| keyvault_client_vaults_factory) | ||
| cli_command(__name__, 'keyvault show', mgmt_path.format('VaultsOperations.get'), | ||
| keyvault_client_vaults_factory, exception_handler=empty_on_404) | ||
| cli_command(__name__, 'keyvault delete', mgmt_path.format('VaultsOperations.delete'), | ||
| keyvault_client_vaults_factory) | ||
|
|
||
| cli_command(__name__, 'keyvault purge', mgmt_path.format('VaultsOperations.purge_deleted'), | ||
| keyvault_client_vaults_factory) | ||
| cli_command(__name__, 'keyvault set-policy', custom_path.format('set_policy'), | ||
| keyvault_client_vaults_factory) | ||
| cli_command(__name__, 'keyvault delete-policy', custom_path.format('delete_policy'), | ||
| keyvault_client_vaults_factory) | ||
| cli_command(__name__, 'keyvault list-deleted', mgmt_path.format('VaultsOperations.list_deleted'), | ||
| keyvault_client_vaults_factory) | ||
|
|
||
| cli_generic_update_command(__name__, | ||
| 'keyvault update', | ||
|
|
@@ -42,13 +47,21 @@ | |
| data_client_path.format('KeyVaultClient.get_keys')) | ||
| cli_keyvault_data_plane_command('keyvault key list-versions', | ||
| data_client_path.format('KeyVaultClient.get_key_versions')) | ||
| cli_keyvault_data_plane_command('keyvault key list-deleted', | ||
|
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Alternatively, you could simply enhance the existing list command with a --deleted flag (or something similar) rather than have a completely separate command. This would be similar to list/list-all folding that many commands do
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. list and list-deleted have some conflicting arguments in some cases and return different types in all, this is why I created them as separate commands |
||
| data_client_path.format('KeyVaultClient.get_deleted_keys')) | ||
| cli_keyvault_data_plane_command('keyvault key create', custom_path.format('create_key')) | ||
| cli_keyvault_data_plane_command('keyvault key set-attributes', | ||
| data_client_path.format('KeyVaultClient.update_key')) | ||
| cli_keyvault_data_plane_command('keyvault key show', | ||
| data_client_path.format('KeyVaultClient.get_key')) | ||
| cli_keyvault_data_plane_command('keyvault key show-deleted', | ||
| data_client_path.format('KeyVaultClient.get_deleted_key')) | ||
| cli_keyvault_data_plane_command('keyvault key delete', | ||
| data_client_path.format('KeyVaultClient.delete_key')) | ||
| cli_keyvault_data_plane_command('keyvault key purge', | ||
| data_client_path.format('KeyVaultClient.purge_deleted_key')) | ||
| cli_keyvault_data_plane_command('keyvault key recover', | ||
| data_client_path.format('KeyVaultClient.recover_deleted_key')) | ||
| cli_keyvault_data_plane_command('keyvault key backup', custom_path.format('backup_key')) | ||
| cli_keyvault_data_plane_command('keyvault key restore', custom_path.format('restore_key')) | ||
| cli_keyvault_data_plane_command('keyvault key import', custom_path.format('import_key')) | ||
|
|
@@ -57,26 +70,44 @@ | |
| data_client_path.format('KeyVaultClient.get_secrets')) | ||
| cli_keyvault_data_plane_command('keyvault secret list-versions', | ||
| data_client_path.format('KeyVaultClient.get_secret_versions')) | ||
| cli_keyvault_data_plane_command('keyvault secret list-deleted', | ||
| data_client_path.format('KeyVaultClient.get_deleted_secrets')) | ||
| cli_keyvault_data_plane_command('keyvault secret set', | ||
| data_client_path.format('KeyVaultClient.set_secret')) | ||
| cli_keyvault_data_plane_command('keyvault secret set-attributes', | ||
| data_client_path.format('KeyVaultClient.update_secret')) | ||
| cli_keyvault_data_plane_command('keyvault secret show', | ||
| data_client_path.format('KeyVaultClient.get_secret')) | ||
| cli_keyvault_data_plane_command('keyvault secret show-deleted', | ||
| data_client_path.format('KeyVaultClient.get_deleted_secret')) | ||
| cli_keyvault_data_plane_command('keyvault secret delete', | ||
| data_client_path.format('KeyVaultClient.delete_secret')) | ||
| cli_keyvault_data_plane_command('keyvault secret purge', | ||
| data_client_path.format('KeyVaultClient.purge_deleted_secret')) | ||
| cli_keyvault_data_plane_command('keyvault secret recover', | ||
| data_client_path.format('KeyVaultClient.recover_deleted_secret')) | ||
| cli_keyvault_data_plane_command('keyvault secret download', custom_path.format('download_secret')) | ||
| cli_keyvault_data_plane_command('keyvault secret backup', custom_path.format('backup_secret')) | ||
| cli_keyvault_data_plane_command('keyvault secret restore', custom_path.format('restore_secret')) | ||
|
|
||
| cli_keyvault_data_plane_command('keyvault certificate create', | ||
| custom_path.format('create_certificate')) | ||
| cli_keyvault_data_plane_command('keyvault certificate list', | ||
| data_client_path.format('KeyVaultClient.get_certificates')) | ||
| cli_keyvault_data_plane_command('keyvault certificate list-versions', | ||
| data_client_path.format('KeyVaultClient.get_certificate_versions')) | ||
| cli_keyvault_data_plane_command('keyvault certificate list-deleted', | ||
| data_client_path.format('KeyVaultClient.get_deleted_certificates')) | ||
| cli_keyvault_data_plane_command('keyvault certificate show', | ||
| data_client_path.format('KeyVaultClient.get_certificate')) | ||
| cli_keyvault_data_plane_command('keyvault certificate show-deleted', | ||
| data_client_path.format('KeyVaultClient.get_deleted_certificate')) | ||
| cli_keyvault_data_plane_command('keyvault certificate delete', | ||
| data_client_path.format('KeyVaultClient.delete_certificate')) | ||
| cli_keyvault_data_plane_command('keyvault certificate purge', | ||
| data_client_path.format('KeyVaultClient.purge_deleted_certificate')) | ||
| cli_keyvault_data_plane_command('keyvault certificate recover', | ||
| data_client_path.format('KeyVaultClient.recover_deleted_certificate')) | ||
| cli_keyvault_data_plane_command('keyvault certificate set-attributes', | ||
| data_client_path.format('KeyVaultClient.update_certificate')) | ||
| cli_keyvault_data_plane_command('keyvault certificate import', | ||
|
|
||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This should just say "unreleased". Derek will fill this in later.