Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@
# Make will use bash instead of sh
SHELL := /usr/bin/env bash

DOCKER_TAG_VERSION_DEVELOPER_TOOLS := 1.22
DOCKER_TAG_VERSION_DEVELOPER_TOOLS := 1.23
DOCKER_IMAGE_DEVELOPER_TOOLS := cft/developer-tools
REGISTRY_URL := gcr.io/cloud-foundation-cicd
ENABLE_BPMETADATA := 1
Expand Down
28 changes: 28 additions & 0 deletions metadata.display.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
# 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-vm-display
annotations:
config.kubernetes.io/local-config: "true"
spec:
info:
title: terraform-google-vm
source:
repo: https://github.com/terraform-google-modules/terraform-google-vm
sourceType: git
ui:
input: {}
54 changes: 54 additions & 0 deletions modules/compute_disk_snapshot/metadata.display.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
# 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-vm-compute-disk-snapshot-display
annotations:
config.kubernetes.io/local-config: "true"
spec:
info:
title: Compute Disk Snapshot
source:
repo: https://github.com/terraform-google-modules/terraform-google-vm
sourceType: git
dir: /modules/compute_disk_snapshot
ui:
input:
variables:
disks:
name: disks
title: Disks
module_depends_on:
name: module_depends_on
title: Module Depends On
name:
name: name
title: Name
project:
name: project
title: Project
region:
name: region
title: Region
snapshot_properties:
name: snapshot_properties
title: Snapshot Properties
snapshot_retention_policy:
name: snapshot_retention_policy
title: Snapshot Retention Policy
snapshot_schedule:
name: snapshot_schedule
title: Snapshot Schedule
2 changes: 1 addition & 1 deletion modules/compute_disk_snapshot/metadata.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ spec:
version: 13.2.4
actuationTool:
flavor: Terraform
version: ">=0.13.0"
version: ">=1.3.0"
description: {}
content:
examples:
Expand Down
2 changes: 1 addition & 1 deletion modules/compute_disk_snapshot/versions.tf
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@
*/

terraform {
required_version = ">=0.13.0"
required_version = ">=1.3.0"
required_providers {
google = {
source = "hashicorp/google"
Expand Down
84 changes: 84 additions & 0 deletions modules/compute_instance/metadata.display.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,84 @@
# 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-vm-compute-instance-display
annotations:
config.kubernetes.io/local-config: "true"
spec:
info:
title: Compute Instance
source:
repo: https://github.com/terraform-google-modules/terraform-google-vm
sourceType: git
dir: /modules/compute_instance
ui:
input:
variables:
access_config:
name: access_config
title: Access Config
add_hostname_suffix:
name: add_hostname_suffix
title: Add Hostname Suffix
alias_ip_ranges:
name: alias_ip_ranges
title: Alias Ip Ranges
deletion_protection:
name: deletion_protection
title: Deletion Protection
hostname:
name: hostname
title: Hostname
hostname_suffix_separator:
name: hostname_suffix_separator
title: Hostname Suffix Separator
instance_template:
name: instance_template
title: Instance Template
ipv6_access_config:
name: ipv6_access_config
title: Ipv6 Access Config
labels:
name: labels
title: Labels
network:
name: network
title: Network
num_instances:
name: num_instances
title: Num Instances
region:
name: region
title: Region
resource_manager_tags:
name: resource_manager_tags
title: Resource Manager Tags
resource_policies:
name: resource_policies
title: Resource Policies
static_ips:
name: static_ips
title: Static Ips
subnetwork:
name: subnetwork
title: Subnetwork
subnetwork_project:
name: subnetwork_project
title: Subnetwork Project
zone:
name: zone
title: Zone
2 changes: 1 addition & 1 deletion modules/compute_instance/metadata.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ spec:
version: 13.2.4
actuationTool:
flavor: Terraform
version: ">=0.13.0"
version: ">=1.3.0"
description: {}
content:
examples:
Expand Down
2 changes: 1 addition & 1 deletion modules/compute_instance/versions.tf
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@
*/

terraform {
required_version = ">=0.13.0"
required_version = ">=1.3.0"
required_providers {
google = {
source = "hashicorp/google"
Expand Down
1 change: 1 addition & 0 deletions modules/instance_template/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -47,6 +47,7 @@ See the [simple](../../examples/instance_template/simple) for a usage example.
| preemptible | Allow the instance to be preempted | `bool` | `false` | no |
| project\_id | The GCP project ID | `string` | n/a | yes |
| region | Region where the instance template should be created. | `string` | n/a | yes |
| resource\_manager\_tags | (Optional) A set of key/value resource manager tag pairs to bind to the instances. Keys must be in the format tagKeys/{tag\_key\_id}, and values are in the format tagValues/456 | `map(string)` | `null` | no |
| resource\_policies | A list of self\_links of resource policies to attach to the instance. Modifying this list will cause the instance to recreate. Currently a max of 1 resource policy is supported. | `list(string)` | `[]` | no |
| service\_account | Service account to attach to the instance. See https://www.terraform.io/docs/providers/google/r/compute_instance_template#service_account. | <pre>object({<br> email = string<br> scopes = optional(set(string), ["cloud-platform"])<br> })</pre> | `null` | no |
| service\_account\_project\_roles | Roles to grant to the newly created cloud run SA in specified project. Should be used with create\_service\_account set to true and no input for service\_account | `list(string)` | `[]` | no |
Expand Down
2 changes: 2 additions & 0 deletions modules/instance_template/main.tf
Original file line number Diff line number Diff line change
Expand Up @@ -120,6 +120,8 @@ resource "google_compute_instance_template" "tpl" {
region = var.region
min_cpu_platform = local.min_cpu_platform
resource_policies = var.resource_policies
resource_manager_tags = var.resource_manager_tags

dynamic "disk" {
for_each = local.all_disks
content {
Expand Down
3 changes: 3 additions & 0 deletions modules/instance_template/metadata.display.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -156,6 +156,9 @@ spec:
name: region
title: Region
level: 1
resource_manager_tags:
name: resource_manager_tags
title: Resource Manager Tags
resource_policies:
name: resource_policies
title: Resource Policies
Expand Down
16 changes: 4 additions & 12 deletions modules/instance_template/metadata.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ spec:
version: 13.2.4
actuationTool:
flavor: Terraform
version: ">=1.3"
version: ">=1.3.0"
description: {}
content:
examples:
Expand Down Expand Up @@ -430,28 +430,20 @@ spec:
ip_cidr_range = string
subnetwork_range_name = string
})
- name: resource_manager_tags
description: (Optional) A set of key/value resource manager tag pairs to bind to the instances. Keys must be in the format tagKeys/{tag_key_id}, and values are in the format tagValues/456
varType: map(string)
outputs:
- name: name
description: Name of instance template
type: string
- name: self_link
description: Self-link of instance template
type: string
- name: self_link_unique
description: Unique self-link of instance template (recommended output to use instead of self_link)
type: string
- name: service_account_info
description: Service account id and email
type:
- object
- email: string
id: string
member: string
- name: tags
description: Tags that will be associated with instance(s)
type:
- list
- string
requirements:
roles:
- level: Project
Expand Down
6 changes: 6 additions & 0 deletions modules/instance_template/variables.tf
Original file line number Diff line number Diff line change
Expand Up @@ -429,3 +429,9 @@ EOF
})
default = null
}

variable "resource_manager_tags" {
description = "(Optional) A set of key/value resource manager tag pairs to bind to the instances. Keys must be in the format tagKeys/{tag_key_id}, and values are in the format tagValues/456"
type = map(string)
default = null
}
2 changes: 1 addition & 1 deletion modules/instance_template/versions.tf
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@
*/

terraform {
required_version = ">=1.3"
required_version = ">=1.3.0"
required_providers {
google-beta = {
source = "hashicorp/google-beta"
Expand Down
13 changes: 0 additions & 13 deletions modules/mig/metadata.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -291,27 +291,14 @@ spec:
outputs:
- name: apphub_workload_uri
description: Workload URI in CAIS style to be used by Apphub.
type:
- object
- location: string
workload_id: string
workload_uri: string
- name: health_check_self_links
description: All self_links of healthchecks created for the instance group.
type:
- list
- string
- name: instance_group
description: Instance-group url of managed instance group
type: string
- name: instance_group_manager
description: An instance of google_compute_region_instance_group_manager of the instance group.
type:
- object
- base_instance_name: string
- name: self_link
description: Self-link of managed instance group
type: string
requirements:
roles:
- level: Project
Expand Down
Loading