You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
module"google_cloud_asset_project_feed" {
source="./modules/google-beta/r/google_cloud_asset_project_feed"# asset_names - (optional) is a type of list of stringasset_names=[]
# asset_types - (optional) is a type of list of stringasset_types=[]
# billing_project - (optional) is a type of stringbilling_project=null# content_type - (optional) is a type of stringcontent_type=null# feed_id - (required) is a type of stringfeed_id=null# project - (optional) is a type of stringproject=nullcondition=[{
description =null
expression =null
location =null
title =null
}]
feed_output_config=[{
pubsub_destination = [{
topic =null
}]
}]
timeouts=[{
create =null
delete =null
update =null
}]
}
variable"asset_names" {
description="(optional) - A list of the full names of the assets to receive updates. You must specify either or both of \nassetNames and assetTypes. Only asset updates matching specified assetNames and assetTypes are\nexported to the feed. For example: //compute.googleapis.com/projects/my_project_123/zones/zone1/instances/instance1.\nSee https://cloud.google.com/apis/design/resourceNames#fullResourceName for more info."type=list(string)
default=null
}
variable"asset_types" {
description="(optional) - A list of types of the assets to receive updates. You must specify either or both of assetNames\nand assetTypes. Only asset updates matching specified assetNames and assetTypes are exported to\nthe feed. For example: \"compute.googleapis.com/Disk\"\nSee https://cloud.google.com/asset-inventory/docs/supported-asset-types for a list of all\nsupported asset types."type=list(string)
default=null
}
variable"billing_project" {
description="(optional) - The project whose identity will be used when sending messages to the\ndestination pubsub topic. It also specifies the project for API \nenablement check, quota, and billing. If not specified, the resource's\nproject will be used."type=stringdefault=null
}
variable"content_type" {
description="(optional) - Asset content type. If not specified, no content but the asset name and type will be returned. Possible values: [\"CONTENT_TYPE_UNSPECIFIED\", \"RESOURCE\", \"IAM_POLICY\", \"ORG_POLICY\", \"ACCESS_POLICY\"]"type=stringdefault=null
}
variable"feed_id" {
description="(required) - This is the client-assigned asset feed identifier and it needs to be unique under a specific parent."type=string
}
variable"project" {
description="(optional)"type=stringdefault=null
}
variable"condition" {
description="nested block: NestingList, min items: 0, max items: 1"type=set(object(
{
description =string
expression =string
location =string
title =string
}
))
default=[]
}
variable"feed_output_config" {
description="nested block: NestingList, min items: 1, max items: 1"type=set(object(
{
pubsub_destination =list(object(
{
topic =string
}
))
}
))
}
variable"timeouts" {
description="nested block: NestingSingle, min items: 0, max items: 0"type=set(object(
{
create =string
delete =string
update =string
}
))
default=[]
}
resource"google_cloud_asset_project_feed""this" {
# asset_names - (optional) is a type of list of stringasset_names=var.asset_names# asset_types - (optional) is a type of list of stringasset_types=var.asset_types# billing_project - (optional) is a type of stringbilling_project=var.billing_project# content_type - (optional) is a type of stringcontent_type=var.content_type# feed_id - (required) is a type of stringfeed_id=var.feed_id# project - (optional) is a type of stringproject=var.projectdynamic"condition" {
for_each=var.conditioncontent {
# description - (optional) is a type of stringdescription=condition.value["description"]
# expression - (required) is a type of stringexpression=condition.value["expression"]
# location - (optional) is a type of stringlocation=condition.value["location"]
# title - (optional) is a type of stringtitle=condition.value["title"]
}
}
dynamic"feed_output_config" {
for_each=var.feed_output_configcontent {
dynamic"pubsub_destination" {
for_each=feed_output_config.value.pubsub_destinationcontent {
# topic - (required) is a type of stringtopic=pubsub_destination.value["topic"]
}
}
}
}
dynamic"timeouts" {
for_each=var.timeoutscontent {
# create - (optional) is a type of stringcreate=timeouts.value["create"]
# delete - (optional) is a type of stringdelete=timeouts.value["delete"]
# update - (optional) is a type of stringupdate=timeouts.value["update"]
}
}
}