Use service principal name as creator (#13)
This commit is contained in:
Родитель
92cc2c3396
Коммит
543114d8c7
|
@ -57,6 +57,10 @@ class AuthSettings(object):
|
||||||
def user_id(self) -> str:
|
def user_id(self) -> str:
|
||||||
return self._get_token_value('userId')
|
return self._get_token_value('userId')
|
||||||
|
|
||||||
|
@property
|
||||||
|
def service_principal_id(self) -> str:
|
||||||
|
return self._get_token_value('_clientId')
|
||||||
|
|
||||||
@property
|
@property
|
||||||
def refresh_token(self) -> str:
|
def refresh_token(self) -> str:
|
||||||
return self._get_token_value('refreshToken')
|
return self._get_token_value('refreshToken')
|
||||||
|
@ -213,3 +217,10 @@ def get_user_id() -> str:
|
||||||
except AuthenticationError:
|
except AuthenticationError:
|
||||||
print('You need to login. Usage: a01 login.')
|
print('You need to login. Usage: a01 login.')
|
||||||
sys.exit(1)
|
sys.exit(1)
|
||||||
|
|
||||||
|
def get_service_principal_id() -> str:
|
||||||
|
try:
|
||||||
|
return AuthSettings().service_principal_id
|
||||||
|
except AuthenticationError:
|
||||||
|
print('You need to login. Usage: a01 login.')
|
||||||
|
sys.exit(1)
|
||||||
|
|
|
@ -24,7 +24,7 @@ import a01.models
|
||||||
from a01.common import get_logger, A01Config, COMMON_IMAGE_PULL_SECRET
|
from a01.common import get_logger, A01Config, COMMON_IMAGE_PULL_SECRET
|
||||||
from a01.cli import cmd, arg
|
from a01.cli import cmd, arg
|
||||||
from a01.communication import session
|
from a01.communication import session
|
||||||
from a01.auth import get_user_id
|
from a01.auth import get_user_id, get_service_principal_id
|
||||||
from a01.output import output_in_table
|
from a01.output import output_in_table
|
||||||
|
|
||||||
logger = get_logger(__name__) # pylint: disable=invalid-name
|
logger = get_logger(__name__) # pylint: disable=invalid-name
|
||||||
|
@ -107,6 +107,8 @@ def create_run(image: str, from_failures: str = None, live: bool = False, parall
|
||||||
remark: str = '', email: bool = False, secret: str = None, mode: str = None,
|
remark: str = '', email: bool = False, secret: str = None, mode: str = None,
|
||||||
reset_run: str = None) -> None:
|
reset_run: str = None) -> None:
|
||||||
remark = remark or ''
|
remark = remark or ''
|
||||||
|
creator = get_user_id() if email else get_service_principal_id()
|
||||||
|
|
||||||
try:
|
try:
|
||||||
if not reset_run:
|
if not reset_run:
|
||||||
run_model = a01.models.Run(name=f'Azure CLI Test @ {image}',
|
run_model = a01.models.Run(name=f'Azure CLI Test @ {image}',
|
||||||
|
@ -124,7 +126,7 @@ def create_run(image: str, from_failures: str = None, live: bool = False, parall
|
||||||
'a01.reserved.fromrunfailure': from_failures,
|
'a01.reserved.fromrunfailure': from_failures,
|
||||||
},
|
},
|
||||||
details={
|
details={
|
||||||
'a01.reserved.creator': get_user_id(),
|
'a01.reserved.creator': creator,
|
||||||
'a01.reserved.client': 'A01 CLI'
|
'a01.reserved.client': 'A01 CLI'
|
||||||
})
|
})
|
||||||
|
|
||||||
|
|
Загрузка…
Ссылка в новой задаче