summaryrefslogtreecommitdiff
path: root/openstackclient/common
diff options
context:
space:
mode:
authorZuul <zuul@review.opendev.org>2023-03-20 12:07:44 +0000
committerGerrit Code Review <review@openstack.org>2023-03-20 12:07:44 +0000
commit65b667af2033303beee74e9241400f5bf5817899 (patch)
treea4c295863dcc7e59d19be83c9e6d1ce0a64724c5 /openstackclient/common
parent5eb89e4ca1cebad9245c27d58a0dafd7f363ece0 (diff)
parent7506eb8e0c459494bdb4ec47de2e18a2a953d727 (diff)
downloadpython-openstackclient-65b667af2033303beee74e9241400f5bf5817899.tar.gz
Merge "Add auto-approve option to project cleanup"
Diffstat (limited to 'openstackclient/common')
-rw-r--r--openstackclient/common/project_cleanup.py29
1 files changed, 18 insertions, 11 deletions
diff --git a/openstackclient/common/project_cleanup.py b/openstackclient/common/project_cleanup.py
index 1479f1a4..1193051a 100644
--- a/openstackclient/common/project_cleanup.py
+++ b/openstackclient/common/project_cleanup.py
@@ -48,10 +48,16 @@ class ProjectCleanup(command.Command):
def get_parser(self, prog_name):
parser = super(ProjectCleanup, self).get_parser(prog_name)
- parser.add_argument(
+ action_group = parser.add_mutually_exclusive_group()
+ action_group.add_argument(
'--dry-run',
action='store_true',
- help=_("List a project's resources")
+ help=_("List a project's resources but do not delete them")
+ )
+ action_group.add_argument(
+ '--auto-approve',
+ action='store_true',
+ help=_("Delete resources without asking for confirmation")
)
project_group = parser.add_mutually_exclusive_group(required=True)
project_group.add_argument(
@@ -67,12 +73,12 @@ class ProjectCleanup(command.Command):
parser.add_argument(
'--created-before',
metavar='<YYYY-MM-DDTHH24:MI:SS>',
- help=_('Drop resources created before the given time')
+ help=_('Only delete resources created before the given time')
)
parser.add_argument(
'--updated-before',
metavar='<YYYY-MM-DDTHH24:MI:SS>',
- help=_('Drop resources updated before the given time')
+ help=_('Only delete resources updated before the given time')
)
identity_common.add_project_domain_option_to_parser(parser)
return parser
@@ -127,12 +133,13 @@ class ProjectCleanup(command.Command):
if parsed_args.dry_run:
return
- confirm = ask_user_yesno(
- _("These resources will be deleted. Are you sure"))
+ if not parsed_args.auto_approve:
+ if not ask_user_yesno(
+ _("These resources will be deleted. Are you sure")):
+ return
- if confirm:
- self.log.warning(_('Deleting resources'))
+ self.log.warning(_('Deleting resources'))
- project_connect.project_cleanup(dry_run=False,
- status_queue=status_queue,
- filters=filters)
+ project_connect.project_cleanup(dry_run=False,
+ status_queue=status_queue,
+ filters=filters)