def _get_azure_credentials()

in modular_sdk/services/impl/maestro_credentials_service.py [0:0]


    def _get_azure_credentials(self, application: Application,
                               tenant: Optional[Tenant] = None,
                               ) -> Optional[AZURECredentials]:
        if not application.secret:
            _LOG.warning(f'Application {application.application_id} does not '
                         f'contain secret')
            return
        secret = self._ssm_service.get_parameter(application.secret)
        if not secret:
            _LOG.warning(f'Secret {application.secret} exists in application,'
                         f' but not in SSM')
            return
        if isinstance(secret, str):
            meta = AZURECredentialsApplicationMeta.from_dict(
                application.meta.as_dict()
            )
            tenant_id = meta.tenantId
            client_id = meta.clientId
            api_key = secret
        else:  # isinstance(secret, dict)
            secret = AZURECredentialsApplicationSecret.from_dict(secret)
            tenant_id = secret.tenant_id
            client_id = secret.client_id
            api_key = secret.api_key
        return AZURECredentials(
            AZURE_TENANT_ID=tenant_id,
            AZURE_CLIENT_ID=client_id,
            AZURE_CLIENT_SECRET=api_key,
            AZURE_SUBSCRIPTION_ID=tenant.project if tenant else None
        )