metadata.yaml (122 lines of code) (raw):

# Copyright 2025 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-google-apphub annotations: config.kubernetes.io/local-config: "true" spec: info: title: terraform-google-apphub source: repo: https://github.com/GoogleCloudPlatform/terraform-google-apphub sourceType: git version: 0.3.0 actuationTool: flavor: Terraform version: ">=1.3" description: {} icon: assets/icon.png content: examples: - name: simple_example location: examples/simple_example interfaces: variables: - name: project_id description: The project ID of the host project where AppHub application is created. varType: string required: true - name: location description: The location of AppHub application. varType: string required: true - name: service_project_ids description: The list of service projects to attach with host project. varType: list(string) defaultValue: [] - name: create_application description: Create apphub application when true varType: bool defaultValue: false - name: application_id description: The AppHub application identifier varType: string required: true - name: display_name description: User-defined name for the AppHub application varType: string defaultValue: "" - name: description description: User-defined description of AppHub application varType: string defaultValue: "" - name: scope description: "Scope of the AppHub application. Possible values are: REGIONAL, GLOBAL." varType: "object({ type : string })" defaultValue: type: REGIONAL - name: attributes description: Attributes for the AppHub application varType: |- object({ environment : optional(object({ type : string })), criticality : optional(object({ type : string })), business_owners : optional(object({ email : string, display_name : optional(string, "") })), developer_owners : optional(object({ email : string, display_name : optional(string, "") })), operator_owners : optional(object({ email : string, display_name : optional(string, "") })) }) - name: service_uris description: The list of service uris in CAIS style to register varType: "list(object({ service_uri : string, service_id : string, location : string }))" defaultValue: [] connections: - source: source: github.com/terraform-google-modules/terraform-google-sql-db//modules/postgresql version: ">= 23.0" spec: outputExpr: apphub_service_uri - source: source: github.com/terraform-google-modules/terraform-google-memorystore version: ">= 12.0" spec: outputExpr: apphub_service_uri - name: workload_uris description: The list of workload uris in CAIS style to register varType: "list(object({ workload_uri : string, workload_id : string, location : string }))" defaultValue: [] connections: - source: source: github.com/GoogleCloudPlatform/terraform-google-cloud-run//modules/v2 version: ">= 0.14" spec: outputExpr: apphub_service_uri - source: source: github.com/terraform-google-modules/terraform-google-vm//modules/mig version: ">= 12.1.2" spec: outputExpr: apphub_service_uri outputs: - name: application_id description: The apphub application id in format projects/{{project}}/locations/{{location}}/applications/{{application_id}} type: string - name: service_ids description: The list of service ids registered with application. type: - list - string - name: workload_ids description: The list of workload ids registered with application. type: - list - string requirements: roles: - level: Project roles: - roles/owner services: - apphub.googleapis.com - serviceusage.googleapis.com providerVersions: - source: hashicorp/google version: ">= 3.53, < 7"