in google_cloud_automlops/utils/utils.py [0:0]
def get_required_apis(defaults: dict) -> list:
"""Returns the list of required APIs based on the user tooling selection determined during
the generate() step.
Args:
defaults (dict): Contents of the Defaults yaml file (config/defaults.yaml).
Returns:
list: Required APIs.
"""
required_apis = [
'cloudbuild.googleapis.com',
'cloudresourcemanager.googleapis.com',
'compute.googleapis.com',
'iamcredentials.googleapis.com',
'iam.googleapis.com',
'pubsub.googleapis.com',
'storage.googleapis.com']
if defaults['tooling']['orchestration_framework'] == Orchestrator.KFP.value:
required_apis.append('aiplatform.googleapis.com')
if defaults['gcp']['artifact_repo_type'] == ArtifactRepository.ARTIFACT_REGISTRY.value:
required_apis.append('artifactregistry.googleapis.com')
# if defaults['tooling']['deployment_framework'] == Deployer.CLOUDBUILD.value:
# required_apis.add('cloudbuild.googleapis.com')
if defaults['tooling']['use_ci']:
if defaults['gcp']['schedule_pattern'] != DEFAULT_SCHEDULE_PATTERN:
required_apis.append('cloudscheduler.googleapis.com')
if defaults['gcp']['pipeline_job_submission_service_type'] == PipelineJobSubmitter.CLOUD_RUN.value:
required_apis.append('run.googleapis.com')
if defaults['gcp']['pipeline_job_submission_service_type'] == PipelineJobSubmitter.CLOUD_FUNCTIONS.value:
required_apis.append('cloudfunctions.googleapis.com')
if defaults['gcp']['setup_model_monitoring']:
required_apis.append('logging.googleapis.com')
return required_apis