Don't look up project by id if given id

There is a much deeper and systemic issue going on here, but let's
start with fixing the immediate issue which is that adding a project
to an image fails trying to look up project information even if the
user passes the project id by id.

_is_uuid_like from sdk isn't perfect, but it'll be good enough
for this.

Change-Id: I541416d737b961c56aa2f584c172528632fd5537
This commit is contained in:
Dmitriy Rabotyagov 2020-03-12 20:35:49 +02:00 committed by Monty Taylor
parent 768a64aac5
commit 042be7c7fe
1 changed files with 8 additions and 3 deletions

View File

@ -21,6 +21,7 @@ import logging
import os
import sys
import openstack.cloud._utils
from openstack.image import image_signer
from osc_lib.api import utils as api_utils
from osc_lib.cli import format_columns
@ -158,9 +159,13 @@ class AddProjectToImage(command.ShowOne):
image_client = self.app.client_manager.image
identity_client = self.app.client_manager.identity
project_id = common.find_project(identity_client,
parsed_args.project,
parsed_args.project_domain).id
if openstack.cloud._utils._is_uuid_like(parsed_args.project):
project_id = parsed_args.project
else:
project_id = common.find_project(
identity_client,
parsed_args.project,
parsed_args.project_domain).id
image = image_client.find_image(parsed_args.image,
ignore_missing=False)