Add bug fix in bucket local variable (#1709)
Fix bucket name reference in Cloud Functions if bucket is created and prefix is used.
This commit is contained in:
@@ -95,6 +95,7 @@ You can have the module auto-create the GCS bucket used for deployment via the `
|
|||||||
module "cf-http" {
|
module "cf-http" {
|
||||||
source = "./fabric/modules/cloud-function-v1"
|
source = "./fabric/modules/cloud-function-v1"
|
||||||
project_id = "my-project"
|
project_id = "my-project"
|
||||||
|
prefix = "my-prefix"
|
||||||
name = "test-cf-http"
|
name = "test-cf-http"
|
||||||
bucket_name = "test-cf-bundles"
|
bucket_name = "test-cf-bundles"
|
||||||
bucket_config = {
|
bucket_config = {
|
||||||
@@ -104,7 +105,7 @@ module "cf-http" {
|
|||||||
source_dir = "fabric/assets/"
|
source_dir = "fabric/assets/"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
# tftest modules=1 resources=3
|
# tftest modules=1 resources=3 inventory=bucket-creation.yaml
|
||||||
```
|
```
|
||||||
|
|
||||||
### Service account management
|
### Service account management
|
||||||
@@ -246,34 +247,31 @@ module "cf-http" {
|
|||||||
}
|
}
|
||||||
# tftest modules=1 resources=2 inventory=secrets.yaml
|
# tftest modules=1 resources=2 inventory=secrets.yaml
|
||||||
```
|
```
|
||||||
|
|
||||||
|
|
||||||
<!-- BEGIN TFDOC -->
|
<!-- BEGIN TFDOC -->
|
||||||
|
|
||||||
## Variables
|
## Variables
|
||||||
|
|
||||||
| name | description | type | required | default |
|
| name | description | type | required | default |
|
||||||
|---|---|:---:|:---:|:---:|
|
|---|---|:---:|:---:|:---:|
|
||||||
| [bucket_name](variables.tf#L26) | Name of the bucket that will be used for the function code. It will be created with prefix prepended if bucket_config is not null. | <code>string</code> | ✓ | |
|
| [bucket_name](variables.tf#L26) | Name of the bucket that will be used for the function code. It will be created with prefix prepended if bucket_config is not null. | <code>string</code> | ✓ | |
|
||||||
| [bundle_config](variables.tf#L37) | Cloud function source folder and generated zip bundle paths. Output path defaults to '/tmp/bundle.zip' if null. | <code title="object({ source_dir = string output_path = optional(string) excludes = optional(list(string)) })">object({…})</code> | ✓ | |
|
| [bundle_config](variables.tf#L38) | Cloud function source folder and generated zip bundle paths. Output path defaults to '/tmp/bundle.zip' if null. | <code title="object({ source_dir = string output_path = optional(string) excludes = optional(list(string)) })">object({…})</code> | ✓ | |
|
||||||
| [name](variables.tf#L96) | Name used for cloud function and associated resources. | <code>string</code> | ✓ | |
|
| [name](variables.tf#L97) | Name used for cloud function and associated resources. | <code>string</code> | ✓ | |
|
||||||
| [project_id](variables.tf#L111) | Project id used for all resources. | <code>string</code> | ✓ | |
|
| [project_id](variables.tf#L112) | Project id used for all resources. | <code>string</code> | ✓ | |
|
||||||
| [bucket_config](variables.tf#L17) | Enable and configure auto-created bucket. Set fields to null to use defaults. | <code title="object({ location = optional(string) lifecycle_delete_age_days = optional(number) })">object({…})</code> | | <code>null</code> |
|
| [bucket_config](variables.tf#L17) | Enable and configure auto-created bucket. Set fields to null to use defaults. | <code title="object({ location = optional(string) lifecycle_delete_age_days = optional(number) })">object({…})</code> | | <code>null</code> |
|
||||||
| [build_worker_pool](variables.tf#L31) | Build worker pool, in projects/<PROJECT-ID>/locations/<REGION>/workerPools/<POOL_NAME> format. | <code>string</code> | | <code>null</code> |
|
| [build_worker_pool](variables.tf#L32) | Build worker pool, in projects/<PROJECT-ID>/locations/<REGION>/workerPools/<POOL_NAME> format. | <code>string</code> | | <code>null</code> |
|
||||||
| [description](variables.tf#L46) | Optional description. | <code>string</code> | | <code>"Terraform managed."</code> |
|
| [description](variables.tf#L47) | Optional description. | <code>string</code> | | <code>"Terraform managed."</code> |
|
||||||
| [environment_variables](variables.tf#L52) | Cloud function environment variables. | <code>map(string)</code> | | <code>{}</code> |
|
| [environment_variables](variables.tf#L53) | Cloud function environment variables. | <code>map(string)</code> | | <code>{}</code> |
|
||||||
| [function_config](variables.tf#L58) | Cloud function configuration. Defaults to using main as entrypoint, 1 instance with 256MiB of memory, and 180 second timeout. | <code title="object({ entry_point = optional(string, "main") instance_count = optional(number, 1) memory_mb = optional(number, 256) # Memory in MB cpu = optional(string, "0.166") runtime = optional(string, "python310") timeout_seconds = optional(number, 180) })">object({…})</code> | | <code title="{ entry_point = "main" instance_count = 1 memory_mb = 256 cpu = "0.166" runtime = "python310" timeout_seconds = 180 }">{…}</code> |
|
| [function_config](variables.tf#L59) | Cloud function configuration. Defaults to using main as entrypoint, 1 instance with 256MiB of memory, and 180 second timeout. | <code title="object({ entry_point = optional(string, "main") instance_count = optional(number, 1) memory_mb = optional(number, 256) # Memory in MB cpu = optional(string, "0.166") runtime = optional(string, "python310") timeout_seconds = optional(number, 180) })">object({…})</code> | | <code title="{ entry_point = "main" instance_count = 1 memory_mb = 256 cpu = "0.166" runtime = "python310" timeout_seconds = 180 }">{…}</code> |
|
||||||
| [iam](variables.tf#L78) | IAM bindings for topic in {ROLE => [MEMBERS]} format. | <code>map(list(string))</code> | | <code>{}</code> |
|
| [iam](variables.tf#L79) | IAM bindings for topic in {ROLE => [MEMBERS]} format. | <code>map(list(string))</code> | | <code>{}</code> |
|
||||||
| [ingress_settings](variables.tf#L84) | Control traffic that reaches the cloud function. Allowed values are ALLOW_ALL, ALLOW_INTERNAL_AND_GCLB and ALLOW_INTERNAL_ONLY . | <code>string</code> | | <code>null</code> |
|
| [ingress_settings](variables.tf#L85) | Control traffic that reaches the cloud function. Allowed values are ALLOW_ALL, ALLOW_INTERNAL_AND_GCLB and ALLOW_INTERNAL_ONLY . | <code>string</code> | | <code>null</code> |
|
||||||
| [labels](variables.tf#L90) | Resource labels. | <code>map(string)</code> | | <code>{}</code> |
|
| [labels](variables.tf#L91) | Resource labels. | <code>map(string)</code> | | <code>{}</code> |
|
||||||
| [prefix](variables.tf#L101) | Optional prefix used for resource names. | <code>string</code> | | <code>null</code> |
|
| [prefix](variables.tf#L102) | Optional prefix used for resource names. | <code>string</code> | | <code>null</code> |
|
||||||
| [region](variables.tf#L116) | Region used for all resources. | <code>string</code> | | <code>"europe-west1"</code> |
|
| [region](variables.tf#L117) | Region used for all resources. | <code>string</code> | | <code>"europe-west1"</code> |
|
||||||
| [secrets](variables.tf#L122) | Secret Manager secrets. Key is the variable name or mountpoint, volume versions are in version:path format. | <code title="map(object({ is_volume = bool project_id = number secret = string versions = list(string) }))">map(object({…}))</code> | | <code>{}</code> |
|
| [secrets](variables.tf#L123) | Secret Manager secrets. Key is the variable name or mountpoint, volume versions are in version:path format. | <code title="map(object({ is_volume = bool project_id = number secret = string versions = list(string) }))">map(object({…}))</code> | | <code>{}</code> |
|
||||||
| [service_account](variables.tf#L134) | Service account email. Unused if service account is auto-created. | <code>string</code> | | <code>null</code> |
|
| [service_account](variables.tf#L135) | Service account email. Unused if service account is auto-created. | <code>string</code> | | <code>null</code> |
|
||||||
| [service_account_create](variables.tf#L140) | Auto-create service account. | <code>bool</code> | | <code>false</code> |
|
| [service_account_create](variables.tf#L141) | Auto-create service account. | <code>bool</code> | | <code>false</code> |
|
||||||
| [trigger_config](variables.tf#L146) | Function trigger configuration. Leave null for HTTP trigger. | <code title="object({ event = string resource = string retry = optional(bool) })">object({…})</code> | | <code>null</code> |
|
| [trigger_config](variables.tf#L147) | Function trigger configuration. Leave null for HTTP trigger. | <code title="object({ event = string resource = string retry = optional(bool) })">object({…})</code> | | <code>null</code> |
|
||||||
| [vpc_connector](variables.tf#L156) | VPC connector configuration. Set create to 'true' if a new connector needs to be created. | <code title="object({ create = bool name = string egress_settings = string })">object({…})</code> | | <code>null</code> |
|
| [vpc_connector](variables.tf#L157) | VPC connector configuration. Set create to 'true' if a new connector needs to be created. | <code title="object({ create = bool name = string egress_settings = string })">object({…})</code> | | <code>null</code> |
|
||||||
| [vpc_connector_config](variables.tf#L166) | VPC connector network configuration. Must be provided if new VPC connector is being created. | <code title="object({ ip_cidr_range = string network = string })">object({…})</code> | | <code>null</code> |
|
| [vpc_connector_config](variables.tf#L167) | VPC connector network configuration. Must be provided if new VPC connector is being created. | <code title="object({ ip_cidr_range = string network = string })">object({…})</code> | | <code>null</code> |
|
||||||
|
|
||||||
## Outputs
|
## Outputs
|
||||||
|
|
||||||
@@ -288,5 +286,4 @@ module "cf-http" {
|
|||||||
| [service_account_email](outputs.tf#L49) | Service account email. | |
|
| [service_account_email](outputs.tf#L49) | Service account email. | |
|
||||||
| [service_account_iam_email](outputs.tf#L54) | Service account email. | |
|
| [service_account_iam_email](outputs.tf#L54) | Service account email. | |
|
||||||
| [vpc_connector](outputs.tf#L62) | VPC connector resource if created. | |
|
| [vpc_connector](outputs.tf#L62) | VPC connector resource if created. | |
|
||||||
|
<!-- END TFDOC -->
|
||||||
<!-- END TFDOC -->
|
|
||||||
@@ -16,7 +16,7 @@
|
|||||||
|
|
||||||
locals {
|
locals {
|
||||||
bucket = (
|
bucket = (
|
||||||
var.bucket_name != null
|
var.bucket_config == null
|
||||||
? var.bucket_name
|
? var.bucket_name
|
||||||
: (
|
: (
|
||||||
length(google_storage_bucket.bucket) > 0
|
length(google_storage_bucket.bucket) > 0
|
||||||
@@ -178,4 +178,4 @@ resource "google_service_account" "service_account" {
|
|||||||
project = var.project_id
|
project = var.project_id
|
||||||
account_id = "tf-cf-${var.name}"
|
account_id = "tf-cf-${var.name}"
|
||||||
display_name = "Terraform Cloud Function ${var.name}."
|
display_name = "Terraform Cloud Function ${var.name}."
|
||||||
}
|
}
|
||||||
@@ -26,6 +26,7 @@ variable "bucket_config" {
|
|||||||
variable "bucket_name" {
|
variable "bucket_name" {
|
||||||
description = "Name of the bucket that will be used for the function code. It will be created with prefix prepended if bucket_config is not null."
|
description = "Name of the bucket that will be used for the function code. It will be created with prefix prepended if bucket_config is not null."
|
||||||
type = string
|
type = string
|
||||||
|
nullable = false
|
||||||
}
|
}
|
||||||
|
|
||||||
variable "build_worker_pool" {
|
variable "build_worker_pool" {
|
||||||
@@ -170,6 +171,4 @@ variable "vpc_connector_config" {
|
|||||||
network = string
|
network = string
|
||||||
})
|
})
|
||||||
default = null
|
default = null
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -110,6 +110,7 @@ You can have the module auto-create the GCS bucket used for deployment via the `
|
|||||||
module "cf-http" {
|
module "cf-http" {
|
||||||
source = "./fabric/modules/cloud-function-v2"
|
source = "./fabric/modules/cloud-function-v2"
|
||||||
project_id = "my-project"
|
project_id = "my-project"
|
||||||
|
prefix = "my-prefix"
|
||||||
name = "test-cf-http"
|
name = "test-cf-http"
|
||||||
bucket_name = "test-cf-bundles"
|
bucket_name = "test-cf-bundles"
|
||||||
bucket_config = {
|
bucket_config = {
|
||||||
@@ -119,7 +120,7 @@ module "cf-http" {
|
|||||||
source_dir = "fabric/assets/"
|
source_dir = "fabric/assets/"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
# tftest modules=1 resources=3
|
# tftest modules=1 resources=3 inventory=bucket-creation.yaml
|
||||||
```
|
```
|
||||||
|
|
||||||
### Service account management
|
### Service account management
|
||||||
@@ -263,31 +264,30 @@ module "cf-http" {
|
|||||||
# tftest modules=1 resources=2 inventory=secrets.yaml
|
# tftest modules=1 resources=2 inventory=secrets.yaml
|
||||||
```
|
```
|
||||||
<!-- BEGIN TFDOC -->
|
<!-- BEGIN TFDOC -->
|
||||||
|
|
||||||
## Variables
|
## Variables
|
||||||
|
|
||||||
| name | description | type | required | default |
|
| name | description | type | required | default |
|
||||||
|---|---|:---:|:---:|:---:|
|
|---|---|:---:|:---:|:---:|
|
||||||
| [bucket_name](variables.tf#L26) | Name of the bucket that will be used for the function code. It will be created with prefix prepended if bucket_config is not null. | <code>string</code> | ✓ | |
|
| [bucket_name](variables.tf#L26) | Name of the bucket that will be used for the function code. It will be created with prefix prepended if bucket_config is not null. | <code>string</code> | ✓ | |
|
||||||
| [bundle_config](variables.tf#L37) | Cloud function source folder and generated zip bundle paths. Output path defaults to '/tmp/bundle.zip' if null. | <code title="object({ source_dir = string output_path = optional(string) excludes = optional(list(string)) })">object({…})</code> | ✓ | |
|
| [bundle_config](variables.tf#L38) | Cloud function source folder and generated zip bundle paths. Output path defaults to '/tmp/bundle.zip' if null. | <code title="object({ source_dir = string output_path = optional(string) excludes = optional(list(string)) })">object({…})</code> | ✓ | |
|
||||||
| [name](variables.tf#L96) | Name used for cloud function and associated resources. | <code>string</code> | ✓ | |
|
| [name](variables.tf#L97) | Name used for cloud function and associated resources. | <code>string</code> | ✓ | |
|
||||||
| [project_id](variables.tf#L111) | Project id used for all resources. | <code>string</code> | ✓ | |
|
| [project_id](variables.tf#L112) | Project id used for all resources. | <code>string</code> | ✓ | |
|
||||||
| [bucket_config](variables.tf#L17) | Enable and configure auto-created bucket. Set fields to null to use defaults. | <code title="object({ location = optional(string) lifecycle_delete_age_days = optional(number) })">object({…})</code> | | <code>null</code> |
|
| [bucket_config](variables.tf#L17) | Enable and configure auto-created bucket. Set fields to null to use defaults. | <code title="object({ location = optional(string) lifecycle_delete_age_days = optional(number) })">object({…})</code> | | <code>null</code> |
|
||||||
| [build_worker_pool](variables.tf#L31) | Build worker pool, in projects/<PROJECT-ID>/locations/<REGION>/workerPools/<POOL_NAME> format. | <code>string</code> | | <code>null</code> |
|
| [build_worker_pool](variables.tf#L32) | Build worker pool, in projects/<PROJECT-ID>/locations/<REGION>/workerPools/<POOL_NAME> format. | <code>string</code> | | <code>null</code> |
|
||||||
| [description](variables.tf#L46) | Optional description. | <code>string</code> | | <code>"Terraform managed."</code> |
|
| [description](variables.tf#L47) | Optional description. | <code>string</code> | | <code>"Terraform managed."</code> |
|
||||||
| [environment_variables](variables.tf#L52) | Cloud function environment variables. | <code>map(string)</code> | | <code>{}</code> |
|
| [environment_variables](variables.tf#L53) | Cloud function environment variables. | <code>map(string)</code> | | <code>{}</code> |
|
||||||
| [function_config](variables.tf#L58) | Cloud function configuration. Defaults to using main as entrypoint, 1 instance with 256MiB of memory, and 180 second timeout. | <code title="object({ entry_point = optional(string, "main") instance_count = optional(number, 1) memory_mb = optional(number, 256) # Memory in MB cpu = optional(string, "0.166") runtime = optional(string, "python310") timeout_seconds = optional(number, 180) })">object({…})</code> | | <code title="{ entry_point = "main" instance_count = 1 memory_mb = 256 cpu = "0.166" runtime = "python310" timeout_seconds = 180 }">{…}</code> |
|
| [function_config](variables.tf#L59) | Cloud function configuration. Defaults to using main as entrypoint, 1 instance with 256MiB of memory, and 180 second timeout. | <code title="object({ entry_point = optional(string, "main") instance_count = optional(number, 1) memory_mb = optional(number, 256) # Memory in MB cpu = optional(string, "0.166") runtime = optional(string, "python310") timeout_seconds = optional(number, 180) })">object({…})</code> | | <code title="{ entry_point = "main" instance_count = 1 memory_mb = 256 cpu = "0.166" runtime = "python310" timeout_seconds = 180 }">{…}</code> |
|
||||||
| [iam](variables.tf#L78) | IAM bindings for topic in {ROLE => [MEMBERS]} format. | <code>map(list(string))</code> | | <code>{}</code> |
|
| [iam](variables.tf#L79) | IAM bindings for topic in {ROLE => [MEMBERS]} format. | <code>map(list(string))</code> | | <code>{}</code> |
|
||||||
| [ingress_settings](variables.tf#L84) | Control traffic that reaches the cloud function. Allowed values are ALLOW_ALL, ALLOW_INTERNAL_AND_GCLB and ALLOW_INTERNAL_ONLY . | <code>string</code> | | <code>null</code> |
|
| [ingress_settings](variables.tf#L85) | Control traffic that reaches the cloud function. Allowed values are ALLOW_ALL, ALLOW_INTERNAL_AND_GCLB and ALLOW_INTERNAL_ONLY . | <code>string</code> | | <code>null</code> |
|
||||||
| [labels](variables.tf#L90) | Resource labels. | <code>map(string)</code> | | <code>{}</code> |
|
| [labels](variables.tf#L91) | Resource labels. | <code>map(string)</code> | | <code>{}</code> |
|
||||||
| [prefix](variables.tf#L101) | Optional prefix used for resource names. | <code>string</code> | | <code>null</code> |
|
| [prefix](variables.tf#L102) | Optional prefix used for resource names. | <code>string</code> | | <code>null</code> |
|
||||||
| [region](variables.tf#L116) | Region used for all resources. | <code>string</code> | | <code>"europe-west1"</code> |
|
| [region](variables.tf#L117) | Region used for all resources. | <code>string</code> | | <code>"europe-west1"</code> |
|
||||||
| [secrets](variables.tf#L122) | Secret Manager secrets. Key is the variable name or mountpoint, volume versions are in version:path format. | <code title="map(object({ is_volume = bool project_id = number secret = string versions = list(string) }))">map(object({…}))</code> | | <code>{}</code> |
|
| [secrets](variables.tf#L123) | Secret Manager secrets. Key is the variable name or mountpoint, volume versions are in version:path format. | <code title="map(object({ is_volume = bool project_id = number secret = string versions = list(string) }))">map(object({…}))</code> | | <code>{}</code> |
|
||||||
| [service_account](variables.tf#L134) | Service account email. Unused if service account is auto-created. | <code>string</code> | | <code>null</code> |
|
| [service_account](variables.tf#L135) | Service account email. Unused if service account is auto-created. | <code>string</code> | | <code>null</code> |
|
||||||
| [service_account_create](variables.tf#L140) | Auto-create service account. | <code>bool</code> | | <code>false</code> |
|
| [service_account_create](variables.tf#L141) | Auto-create service account. | <code>bool</code> | | <code>false</code> |
|
||||||
| [trigger_config](variables.tf#L146) | Function trigger configuration. Leave null for HTTP trigger. | <code title="object({ event_type = string pubsub_topic = optional(string) region = optional(string) event_filters = optional(list(object({ attribute = string value = string operator = optional(string) })), []) service_account_email = optional(string) service_account_create = optional(bool, false) retry_policy = optional(string) })">object({…})</code> | | <code>null</code> |
|
| [trigger_config](variables.tf#L147) | Function trigger configuration. Leave null for HTTP trigger. | <code title="object({ event_type = string pubsub_topic = optional(string) region = optional(string) event_filters = optional(list(object({ attribute = string value = string operator = optional(string) })), []) service_account_email = optional(string) service_account_create = optional(bool, false) retry_policy = optional(string) })">object({…})</code> | | <code>null</code> |
|
||||||
| [vpc_connector](variables.tf#L164) | VPC connector configuration. Set create to 'true' if a new connector needs to be created. | <code title="object({ create = bool name = string egress_settings = string })">object({…})</code> | | <code>null</code> |
|
| [vpc_connector](variables.tf#L165) | VPC connector configuration. Set create to 'true' if a new connector needs to be created. | <code title="object({ create = bool name = string egress_settings = string })">object({…})</code> | | <code>null</code> |
|
||||||
| [vpc_connector_config](variables.tf#L174) | VPC connector network configuration. Must be provided if new VPC connector is being created. | <code title="object({ ip_cidr_range = string network = string })">object({…})</code> | | <code>null</code> |
|
| [vpc_connector_config](variables.tf#L175) | VPC connector network configuration. Must be provided if new VPC connector is being created. | <code title="object({ ip_cidr_range = string network = string })">object({…})</code> | | <code>null</code> |
|
||||||
|
|
||||||
## Outputs
|
## Outputs
|
||||||
|
|
||||||
@@ -306,5 +306,4 @@ module "cf-http" {
|
|||||||
| [trigger_service_account_iam_email](outputs.tf#L72) | Service account email. | |
|
| [trigger_service_account_iam_email](outputs.tf#L72) | Service account email. | |
|
||||||
| [uri](outputs.tf#L80) | Cloud function service uri. | |
|
| [uri](outputs.tf#L80) | Cloud function service uri. | |
|
||||||
| [vpc_connector](outputs.tf#L85) | VPC connector resource if created. | |
|
| [vpc_connector](outputs.tf#L85) | VPC connector resource if created. | |
|
||||||
|
<!-- END TFDOC -->
|
||||||
<!-- END TFDOC -->
|
|
||||||
@@ -16,7 +16,7 @@
|
|||||||
|
|
||||||
locals {
|
locals {
|
||||||
bucket = (
|
bucket = (
|
||||||
var.bucket_name != null
|
var.bucket_config == null
|
||||||
? var.bucket_name
|
? var.bucket_name
|
||||||
: (
|
: (
|
||||||
length(google_storage_bucket.bucket) > 0
|
length(google_storage_bucket.bucket) > 0
|
||||||
|
|||||||
@@ -26,6 +26,7 @@ variable "bucket_config" {
|
|||||||
variable "bucket_name" {
|
variable "bucket_name" {
|
||||||
description = "Name of the bucket that will be used for the function code. It will be created with prefix prepended if bucket_config is not null."
|
description = "Name of the bucket that will be used for the function code. It will be created with prefix prepended if bucket_config is not null."
|
||||||
type = string
|
type = string
|
||||||
|
nullable = false
|
||||||
}
|
}
|
||||||
|
|
||||||
variable "build_worker_pool" {
|
variable "build_worker_pool" {
|
||||||
@@ -178,6 +179,4 @@ variable "vpc_connector_config" {
|
|||||||
network = string
|
network = string
|
||||||
})
|
})
|
||||||
default = null
|
default = null
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -0,0 +1,36 @@
|
|||||||
|
# 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.
|
||||||
|
|
||||||
|
values:
|
||||||
|
module.cf-http.google_cloudfunctions_function.function:
|
||||||
|
name: my-prefix-test-cf-http
|
||||||
|
project: my-project
|
||||||
|
source_archive_bucket: my-prefix-test-cf-bundles
|
||||||
|
|
||||||
|
module.cf-http.google_storage_bucket.bucket[0]:
|
||||||
|
lifecycle_rule:
|
||||||
|
- action:
|
||||||
|
- type: Delete
|
||||||
|
condition:
|
||||||
|
- age: 1
|
||||||
|
name: my-prefix-test-cf-bundles
|
||||||
|
|
||||||
|
counts:
|
||||||
|
google_cloudfunctions_function: 1
|
||||||
|
google_storage_bucket: 1
|
||||||
|
google_storage_bucket_object: 1
|
||||||
|
modules: 1
|
||||||
|
resources: 3
|
||||||
|
|
||||||
|
outputs: {}
|
||||||
@@ -0,0 +1,41 @@
|
|||||||
|
# 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.
|
||||||
|
|
||||||
|
values:
|
||||||
|
module.cf-http.google_cloudfunctions2_function.function:
|
||||||
|
build_config:
|
||||||
|
- source:
|
||||||
|
- storage_source:
|
||||||
|
- bucket: my-prefix-test-cf-bundles
|
||||||
|
name: my-prefix-test-cf-http
|
||||||
|
project: my-project
|
||||||
|
module.cf-http.google_storage_bucket.bucket[0]:
|
||||||
|
lifecycle_rule:
|
||||||
|
- action:
|
||||||
|
- type: Delete
|
||||||
|
condition:
|
||||||
|
- age: 1
|
||||||
|
name: my-prefix-test-cf-bundles
|
||||||
|
project: my-project
|
||||||
|
versioning:
|
||||||
|
- enabled: true
|
||||||
|
|
||||||
|
counts:
|
||||||
|
google_cloudfunctions2_function: 1
|
||||||
|
google_storage_bucket: 1
|
||||||
|
google_storage_bucket_object: 1
|
||||||
|
modules: 1
|
||||||
|
resources: 3
|
||||||
|
|
||||||
|
outputs: {}
|
||||||
Reference in New Issue
Block a user