in alibabacloud_credentials/providers.py [0:0]
def __init__(self, role_session_name=None, role_arn=None,
oidc_provider_arn=None,
oidc_token_file_path=None,
region_id=None,
policy=None, config=None):
self._verify_empty_args(role_arn, oidc_provider_arn, oidc_token_file_path, config=config)
super().__init__(config)
self._set_arg('role_arn', role_arn)
self._set_arg('oidc_provider_arn', oidc_provider_arn)
if oidc_token_file_path is not None:
self._set_arg('oidc_token_file_path', oidc_token_file_path)
elif config.oidc_token_file_path is not None:
self._set_arg('oidc_token_file_path', oidc_token_file_path)
elif au.environment_oidc_token_file is not None:
self._set_arg('oidc_token_file_path', au.environment_oidc_token_file)
else:
raise CredentialException(
'The oidc_token_file_path does not exist and env ALIBABA_CLOUD_OIDC_TOKEN_FILE is none.')
self._set_arg('region_id', region_id)
self._set_arg('role_session_name', role_session_name)
self._set_arg('policy', policy)
if region_id is None and au.environment_sts_region is not None:
self._set_arg('region_id', au.environment_sts_region)
if self.region_id is not None:
self._set_arg('sts_endpoint', f'sts.{self.region_id}.aliyuncs.com')
else:
self._set_arg('sts_endpoint',
'sts.aliyuncs.com' if config is None or config.sts_endpoint is None else config.sts_endpoint)