compute: Remove unnecessary try-except

We don't need to transform one HTTP Forbidden-related error to another:
just use the original one. This also fixes an issue where we would end
up with an undefined variable (server_id) if a non-HTTP 403 exception
was raised, since that would be blindly ignored.

Change-Id: Icdd1764b6f2df4a635e3264ed8f93a115cc52ef2
Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
Closes-Bug: #2062010
This commit is contained in:
Stephen Finucane 2024-06-25 18:38:19 +01:00
parent 19c053efb8
commit 40ce56201c

@ -4844,17 +4844,12 @@ class StartServer(command.Command):
def take_action(self, parsed_args):
compute_client = self.app.client_manager.sdk_connection.compute
for server in parsed_args.server:
try:
server_id = compute_client.find_server(
server,
ignore_missing=False,
details=False,
all_projects=parsed_args.all_projects,
).id
except sdk_exceptions.HttpException as exc:
if exc.status_code == 403:
msg = _("Policy doesn't allow passing all-projects")
raise exceptions.Forbidden(msg)
server_id = compute_client.find_server(
server,
ignore_missing=False,
details=False,
all_projects=parsed_args.all_projects,
).id
compute_client.start_server(server_id)
@ -4884,18 +4879,12 @@ class StopServer(command.Command):
def take_action(self, parsed_args):
compute_client = self.app.client_manager.sdk_connection.compute
for server in parsed_args.server:
try:
server_id = compute_client.find_server(
server,
ignore_missing=False,
details=False,
all_projects=parsed_args.all_projects,
).id
except sdk_exceptions.HttpException as exc:
if exc.status_code == 403:
msg = _("Policy doesn't allow passing all-projects")
raise exceptions.Forbidden(msg)
server_id = compute_client.find_server(
server,
ignore_missing=False,
details=False,
all_projects=parsed_args.all_projects,
).id
compute_client.stop_server(server_id)