infra/metadata.yaml (152 lines of code) (raw):

# Copyright 2023 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. apiVersion: blueprints.cloud.google.com/v1alpha1 kind: BlueprintMetadata metadata: name: terraform-dynamic-python-webapp annotations: config.kubernetes.io/local-config: "true" spec: info: title: terraform-dynamic-python-webapp source: repo: https://github.com/GoogleCloudPlatform/terraform-dynamic-python-webapp sourceType: git dir: /infra actuationTool: flavor: Terraform version: ">= 0.13" description: tagline: This is an auto-generated module. detailed: |- The resources/services/activations/deletions that this module will create/trigger are: - Cloud Run - Cloud SQL - Firebase Hosting - Secret Manager - IAM - Cloud Storage preDeploy: To deploy this blueprint you must have an active billing account and billing permissions. content: documentation: - title: Hosting a Static Website url: https://cloud.google.com/storage/docs/hosting-static-website examples: - name: simple_example location: examples/simple_example - name: suffix_example location: examples/suffix_example interfaces: variables: - name: client_image_host description: Artifact Registry that hosts the client image (PROJECT_ID/registry) varType: string defaultValue: hsa-public/containers/terraform-python-dynamic-webapp - name: database_name description: Cloud SQL database name varType: string defaultValue: django - name: database_username description: Cloud SQL database name varType: string defaultValue: server - name: enable_apis description: Whether or not to enable underlying apis in this solution. varType: bool defaultValue: true - name: image_version description: Version of the container image to use varType: string defaultValue: v1.9.0 - name: init description: Initialize database? varType: bool defaultValue: true - name: instance_name description: Cloud SQL Instance name varType: string defaultValue: psql - name: labels description: A set of key/value label pairs to assign to the resources deployed by this blueprint. varType: map(string) defaultValue: {} - name: project_id description: Google Cloud Project ID varType: string defaultValue: null required: true - name: random_suffix description: Add random suffix to VM name varType: string defaultValue: true - name: region description: Google Cloud Region varType: string defaultValue: us-central1 - name: server_image_host description: Artifact Registry that hosts the server image (PROJECT_ID/registry) varType: string defaultValue: hsa-public/containers/terraform-python-dynamic-webapp - name: service_name description: Cloud Run service name varType: string defaultValue: server - name: zone description: GCP zone for provisioning zonal resources. varType: string defaultValue: us-central1-c outputs: - name: client_job_name description: Name of the Cloud Run Job, deploying the front end - name: django_admin_password description: Django Admin password - name: django_admin_url description: Django Admin URL - name: firebase_url description: Firebase URL - name: neos_toc_url description: Neos Tutorial URL - name: server_service_name description: Name of the Cloud Run service, hosting the server API - name: usage description: Next steps for usage requirements: roles: - level: Project roles: - roles/cloudbuild.builds.editor - roles/cloudsql.admin - roles/compute.admin - roles/compute.networkAdmin - roles/firebase.managementServiceAgent - roles/firebasehosting.admin - roles/iam.serviceAccountAdmin - roles/iam.serviceAccountUser - roles/pubsub.editor - roles/resourcemanager.projectIamAdmin - roles/run.admin - roles/secretmanager.admin - roles/storage.admin services: - bigquery.googleapis.com - bigquerymigration.googleapis.com - bigquerystorage.googleapis.com - cloudtrace.googleapis.com - datastore.googleapis.com - logging.googleapis.com - monitoring.googleapis.com - servicemanagement.googleapis.com - serviceusage.googleapis.com - sql-component.googleapis.com - storage.googleapis.com - storage-api.googleapis.com - storage-component.googleapis.com - artifactregistry.googleapis.com - cloudbuild.googleapis.com - cloudresourcemanager.googleapis.com - compute.googleapis.com - firebase.googleapis.com - firebasehosting.googleapis.com - iam.googleapis.com - pubsub.googleapis.com - run.googleapis.com - secretmanager.googleapis.com - sqladmin.googleapis.com