cloudasset

package
v7.20.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 24, 2024 License: Apache-2.0 Imports: 7 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type FolderFeed

type FolderFeed struct {
	pulumi.CustomResourceState

	// A list of the full names of the assets to receive updates. You must specify either or both of assetNames and assetTypes.
	// Only asset updates matching specified assetNames and assetTypes are exported to the feed. For example:
	// //compute.googleapis.com/projects/my_project_123/zones/zone1/instances/instance1. See
	// https://cloud.google.com/apis/design/resourceNames#fullResourceName for more info.
	AssetNames pulumi.StringArrayOutput `pulumi:"assetNames"`
	// A list of types of the assets to receive updates. You must specify either or both of assetNames and assetTypes. Only
	// asset updates matching specified assetNames and assetTypes are exported to the feed. For example:
	// "compute.googleapis.com/Disk" See https://cloud.google.com/asset-inventory/docs/supported-asset-types for a list of all
	// supported asset types.
	AssetTypes pulumi.StringArrayOutput `pulumi:"assetTypes"`
	// The project whose identity will be used when sending messages to the
	// destination pubsub topic. It also specifies the project for API
	// enablement check, quota, and billing.
	BillingProject pulumi.StringOutput `pulumi:"billingProject"`
	// A condition which determines whether an asset update should be published. If specified, an asset will be returned only
	// when the expression evaluates to true. When set, expression field must be a valid CEL expression on a TemporalAsset with
	// name temporal_asset. Example: a Feed with expression "temporal_asset.deleted == true" will only publish Asset deletions.
	// Other fields of condition are optional.
	Condition FolderFeedConditionPtrOutput `pulumi:"condition"`
	// 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", "OS_INVENTORY", "ACCESS_POLICY"]
	ContentType pulumi.StringPtrOutput `pulumi:"contentType"`
	// This is the client-assigned asset feed identifier and it needs to be unique under a specific parent.
	FeedId pulumi.StringOutput `pulumi:"feedId"`
	// Output configuration for asset feed destination.
	// Structure is documented below.
	FeedOutputConfig FolderFeedFeedOutputConfigOutput `pulumi:"feedOutputConfig"`
	// The folder this feed should be created in.
	Folder pulumi.StringOutput `pulumi:"folder"`
	// The ID of the folder where this feed has been created. Both [FOLDER_NUMBER]
	// and folders/[FOLDER_NUMBER] are accepted.
	FolderId pulumi.StringOutput `pulumi:"folderId"`
	// The format will be folders/{folder_number}/feeds/{client-assigned_feed_identifier}.
	Name pulumi.StringOutput `pulumi:"name"`
}

Describes a Cloud Asset Inventory feed used to to listen to asset updates.

To get more information about FolderFeed, see:

* [API documentation](https://cloud.google.com/asset-inventory/docs/reference/rest/) * How-to Guides

## Example Usage

### Cloud Asset Folder Feed

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/cloudasset"
"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/organizations"
"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/pubsub"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		// The topic where the resource change notifications will be sent.
		feedOutput, err := pubsub.NewTopic(ctx, "feed_output", &pubsub.TopicArgs{
			Project: pulumi.String("my-project-name"),
			Name:    pulumi.String("network-updates"),
		})
		if err != nil {
			return err
		}
		// The folder that will be monitored for resource updates.
		myFolder, err := organizations.NewFolder(ctx, "my_folder", &organizations.FolderArgs{
			DisplayName: pulumi.String("Networking"),
			Parent:      pulumi.String("organizations/123456789"),
		})
		if err != nil {
			return err
		}
		// Create a feed that sends notifications about network resource updates under a
		// particular folder.
		_, err = cloudasset.NewFolderFeed(ctx, "folder_feed", &cloudasset.FolderFeedArgs{
			BillingProject: pulumi.String("my-project-name"),
			Folder:         myFolder.FolderId,
			FeedId:         pulumi.String("network-updates"),
			ContentType:    pulumi.String("RESOURCE"),
			AssetTypes: pulumi.StringArray{
				pulumi.String("compute.googleapis.com/Subnetwork"),
				pulumi.String("compute.googleapis.com/Network"),
			},
			FeedOutputConfig: &cloudasset.FolderFeedFeedOutputConfigArgs{
				PubsubDestination: &cloudasset.FolderFeedFeedOutputConfigPubsubDestinationArgs{
					Topic: feedOutput.ID(),
				},
			},
			Condition: &cloudasset.FolderFeedConditionArgs{
				Expression:  pulumi.String("!temporal_asset.deleted &&\ntemporal_asset.prior_asset_state == google.cloud.asset.v1.TemporalAsset.PriorAssetState.DOES_NOT_EXIST\n"),
				Title:       pulumi.String("created"),
				Description: pulumi.String("Send notifications on creation events"),
			},
		})
		if err != nil {
			return err
		}
		// Find the project number of the project whose identity will be used for sending
		// the asset change notifications.
		_, err = organizations.LookupProject(ctx, &organizations.LookupProjectArgs{
			ProjectId: pulumi.StringRef("my-project-name"),
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

FolderFeed can be imported using any of these accepted formats:

* `folders/{{folder_id}}/feeds/{{name}}`

* `{{folder_id}}/{{name}}`

When using the `pulumi import` command, FolderFeed can be imported using one of the formats above. For example:

```sh $ pulumi import gcp:cloudasset/folderFeed:FolderFeed default folders/{{folder_id}}/feeds/{{name}} ```

```sh $ pulumi import gcp:cloudasset/folderFeed:FolderFeed default {{folder_id}}/{{name}} ```

func GetFolderFeed

func GetFolderFeed(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *FolderFeedState, opts ...pulumi.ResourceOption) (*FolderFeed, error)

GetFolderFeed gets an existing FolderFeed resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewFolderFeed

func NewFolderFeed(ctx *pulumi.Context,
	name string, args *FolderFeedArgs, opts ...pulumi.ResourceOption) (*FolderFeed, error)

NewFolderFeed registers a new resource with the given unique name, arguments, and options.

func (*FolderFeed) ElementType

func (*FolderFeed) ElementType() reflect.Type

func (*FolderFeed) ToFolderFeedOutput

func (i *FolderFeed) ToFolderFeedOutput() FolderFeedOutput

func (*FolderFeed) ToFolderFeedOutputWithContext

func (i *FolderFeed) ToFolderFeedOutputWithContext(ctx context.Context) FolderFeedOutput

type FolderFeedArgs

type FolderFeedArgs struct {
	// A list of the full names of the assets to receive updates. You must specify either or both of assetNames and assetTypes.
	// Only asset updates matching specified assetNames and assetTypes are exported to the feed. For example:
	// //compute.googleapis.com/projects/my_project_123/zones/zone1/instances/instance1. See
	// https://cloud.google.com/apis/design/resourceNames#fullResourceName for more info.
	AssetNames pulumi.StringArrayInput
	// A list of types of the assets to receive updates. You must specify either or both of assetNames and assetTypes. Only
	// asset updates matching specified assetNames and assetTypes are exported to the feed. For example:
	// "compute.googleapis.com/Disk" See https://cloud.google.com/asset-inventory/docs/supported-asset-types for a list of all
	// supported asset types.
	AssetTypes pulumi.StringArrayInput
	// The project whose identity will be used when sending messages to the
	// destination pubsub topic. It also specifies the project for API
	// enablement check, quota, and billing.
	BillingProject pulumi.StringInput
	// A condition which determines whether an asset update should be published. If specified, an asset will be returned only
	// when the expression evaluates to true. When set, expression field must be a valid CEL expression on a TemporalAsset with
	// name temporal_asset. Example: a Feed with expression "temporal_asset.deleted == true" will only publish Asset deletions.
	// Other fields of condition are optional.
	Condition FolderFeedConditionPtrInput
	// 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", "OS_INVENTORY", "ACCESS_POLICY"]
	ContentType pulumi.StringPtrInput
	// This is the client-assigned asset feed identifier and it needs to be unique under a specific parent.
	FeedId pulumi.StringInput
	// Output configuration for asset feed destination.
	// Structure is documented below.
	FeedOutputConfig FolderFeedFeedOutputConfigInput
	// The folder this feed should be created in.
	Folder pulumi.StringInput
}

The set of arguments for constructing a FolderFeed resource.

func (FolderFeedArgs) ElementType

func (FolderFeedArgs) ElementType() reflect.Type

type FolderFeedArray

type FolderFeedArray []FolderFeedInput

func (FolderFeedArray) ElementType

func (FolderFeedArray) ElementType() reflect.Type

func (FolderFeedArray) ToFolderFeedArrayOutput

func (i FolderFeedArray) ToFolderFeedArrayOutput() FolderFeedArrayOutput

func (FolderFeedArray) ToFolderFeedArrayOutputWithContext

func (i FolderFeedArray) ToFolderFeedArrayOutputWithContext(ctx context.Context) FolderFeedArrayOutput

type FolderFeedArrayInput

type FolderFeedArrayInput interface {
	pulumi.Input

	ToFolderFeedArrayOutput() FolderFeedArrayOutput
	ToFolderFeedArrayOutputWithContext(context.Context) FolderFeedArrayOutput
}

FolderFeedArrayInput is an input type that accepts FolderFeedArray and FolderFeedArrayOutput values. You can construct a concrete instance of `FolderFeedArrayInput` via:

FolderFeedArray{ FolderFeedArgs{...} }

type FolderFeedArrayOutput

type FolderFeedArrayOutput struct{ *pulumi.OutputState }

func (FolderFeedArrayOutput) ElementType

func (FolderFeedArrayOutput) ElementType() reflect.Type

func (FolderFeedArrayOutput) Index

func (FolderFeedArrayOutput) ToFolderFeedArrayOutput

func (o FolderFeedArrayOutput) ToFolderFeedArrayOutput() FolderFeedArrayOutput

func (FolderFeedArrayOutput) ToFolderFeedArrayOutputWithContext

func (o FolderFeedArrayOutput) ToFolderFeedArrayOutputWithContext(ctx context.Context) FolderFeedArrayOutput

type FolderFeedCondition

type FolderFeedCondition struct {
	// Description of the expression. This is a longer text which describes the expression,
	// e.g. when hovered over it in a UI.
	Description *string `pulumi:"description"`
	// Textual representation of an expression in Common Expression Language syntax.
	Expression string `pulumi:"expression"`
	// String indicating the location of the expression for error reporting, e.g. a file
	// name and a position in the file.
	Location *string `pulumi:"location"`
	// Title for the expression, i.e. a short string describing its purpose.
	// This can be used e.g. in UIs which allow to enter the expression.
	Title *string `pulumi:"title"`
}

type FolderFeedConditionArgs

type FolderFeedConditionArgs struct {
	// Description of the expression. This is a longer text which describes the expression,
	// e.g. when hovered over it in a UI.
	Description pulumi.StringPtrInput `pulumi:"description"`
	// Textual representation of an expression in Common Expression Language syntax.
	Expression pulumi.StringInput `pulumi:"expression"`
	// String indicating the location of the expression for error reporting, e.g. a file
	// name and a position in the file.
	Location pulumi.StringPtrInput `pulumi:"location"`
	// Title for the expression, i.e. a short string describing its purpose.
	// This can be used e.g. in UIs which allow to enter the expression.
	Title pulumi.StringPtrInput `pulumi:"title"`
}

func (FolderFeedConditionArgs) ElementType

func (FolderFeedConditionArgs) ElementType() reflect.Type

func (FolderFeedConditionArgs) ToFolderFeedConditionOutput

func (i FolderFeedConditionArgs) ToFolderFeedConditionOutput() FolderFeedConditionOutput

func (FolderFeedConditionArgs) ToFolderFeedConditionOutputWithContext

func (i FolderFeedConditionArgs) ToFolderFeedConditionOutputWithContext(ctx context.Context) FolderFeedConditionOutput

func (FolderFeedConditionArgs) ToFolderFeedConditionPtrOutput

func (i FolderFeedConditionArgs) ToFolderFeedConditionPtrOutput() FolderFeedConditionPtrOutput

func (FolderFeedConditionArgs) ToFolderFeedConditionPtrOutputWithContext

func (i FolderFeedConditionArgs) ToFolderFeedConditionPtrOutputWithContext(ctx context.Context) FolderFeedConditionPtrOutput

type FolderFeedConditionInput

type FolderFeedConditionInput interface {
	pulumi.Input

	ToFolderFeedConditionOutput() FolderFeedConditionOutput
	ToFolderFeedConditionOutputWithContext(context.Context) FolderFeedConditionOutput
}

FolderFeedConditionInput is an input type that accepts FolderFeedConditionArgs and FolderFeedConditionOutput values. You can construct a concrete instance of `FolderFeedConditionInput` via:

FolderFeedConditionArgs{...}

type FolderFeedConditionOutput

type FolderFeedConditionOutput struct{ *pulumi.OutputState }

func (FolderFeedConditionOutput) Description

Description of the expression. This is a longer text which describes the expression, e.g. when hovered over it in a UI.

func (FolderFeedConditionOutput) ElementType

func (FolderFeedConditionOutput) ElementType() reflect.Type

func (FolderFeedConditionOutput) Expression

Textual representation of an expression in Common Expression Language syntax.

func (FolderFeedConditionOutput) Location

String indicating the location of the expression for error reporting, e.g. a file name and a position in the file.

func (FolderFeedConditionOutput) Title

Title for the expression, i.e. a short string describing its purpose. This can be used e.g. in UIs which allow to enter the expression.

func (FolderFeedConditionOutput) ToFolderFeedConditionOutput

func (o FolderFeedConditionOutput) ToFolderFeedConditionOutput() FolderFeedConditionOutput

func (FolderFeedConditionOutput) ToFolderFeedConditionOutputWithContext

func (o FolderFeedConditionOutput) ToFolderFeedConditionOutputWithContext(ctx context.Context) FolderFeedConditionOutput

func (FolderFeedConditionOutput) ToFolderFeedConditionPtrOutput

func (o FolderFeedConditionOutput) ToFolderFeedConditionPtrOutput() FolderFeedConditionPtrOutput

func (FolderFeedConditionOutput) ToFolderFeedConditionPtrOutputWithContext

func (o FolderFeedConditionOutput) ToFolderFeedConditionPtrOutputWithContext(ctx context.Context) FolderFeedConditionPtrOutput

type FolderFeedConditionPtrInput

type FolderFeedConditionPtrInput interface {
	pulumi.Input

	ToFolderFeedConditionPtrOutput() FolderFeedConditionPtrOutput
	ToFolderFeedConditionPtrOutputWithContext(context.Context) FolderFeedConditionPtrOutput
}

FolderFeedConditionPtrInput is an input type that accepts FolderFeedConditionArgs, FolderFeedConditionPtr and FolderFeedConditionPtrOutput values. You can construct a concrete instance of `FolderFeedConditionPtrInput` via:

        FolderFeedConditionArgs{...}

or:

        nil

type FolderFeedConditionPtrOutput

type FolderFeedConditionPtrOutput struct{ *pulumi.OutputState }

func (FolderFeedConditionPtrOutput) Description

Description of the expression. This is a longer text which describes the expression, e.g. when hovered over it in a UI.

func (FolderFeedConditionPtrOutput) Elem

func (FolderFeedConditionPtrOutput) ElementType

func (FolderFeedConditionPtrOutput) Expression

Textual representation of an expression in Common Expression Language syntax.

func (FolderFeedConditionPtrOutput) Location

String indicating the location of the expression for error reporting, e.g. a file name and a position in the file.

func (FolderFeedConditionPtrOutput) Title

Title for the expression, i.e. a short string describing its purpose. This can be used e.g. in UIs which allow to enter the expression.

func (FolderFeedConditionPtrOutput) ToFolderFeedConditionPtrOutput

func (o FolderFeedConditionPtrOutput) ToFolderFeedConditionPtrOutput() FolderFeedConditionPtrOutput

func (FolderFeedConditionPtrOutput) ToFolderFeedConditionPtrOutputWithContext

func (o FolderFeedConditionPtrOutput) ToFolderFeedConditionPtrOutputWithContext(ctx context.Context) FolderFeedConditionPtrOutput

type FolderFeedFeedOutputConfig

type FolderFeedFeedOutputConfig struct {
	// Destination on Cloud Pubsub.
	// Structure is documented below.
	PubsubDestination FolderFeedFeedOutputConfigPubsubDestination `pulumi:"pubsubDestination"`
}

type FolderFeedFeedOutputConfigArgs

type FolderFeedFeedOutputConfigArgs struct {
	// Destination on Cloud Pubsub.
	// Structure is documented below.
	PubsubDestination FolderFeedFeedOutputConfigPubsubDestinationInput `pulumi:"pubsubDestination"`
}

func (FolderFeedFeedOutputConfigArgs) ElementType

func (FolderFeedFeedOutputConfigArgs) ToFolderFeedFeedOutputConfigOutput

func (i FolderFeedFeedOutputConfigArgs) ToFolderFeedFeedOutputConfigOutput() FolderFeedFeedOutputConfigOutput

func (FolderFeedFeedOutputConfigArgs) ToFolderFeedFeedOutputConfigOutputWithContext

func (i FolderFeedFeedOutputConfigArgs) ToFolderFeedFeedOutputConfigOutputWithContext(ctx context.Context) FolderFeedFeedOutputConfigOutput

func (FolderFeedFeedOutputConfigArgs) ToFolderFeedFeedOutputConfigPtrOutput

func (i FolderFeedFeedOutputConfigArgs) ToFolderFeedFeedOutputConfigPtrOutput() FolderFeedFeedOutputConfigPtrOutput

func (FolderFeedFeedOutputConfigArgs) ToFolderFeedFeedOutputConfigPtrOutputWithContext

func (i FolderFeedFeedOutputConfigArgs) ToFolderFeedFeedOutputConfigPtrOutputWithContext(ctx context.Context) FolderFeedFeedOutputConfigPtrOutput

type FolderFeedFeedOutputConfigInput

type FolderFeedFeedOutputConfigInput interface {
	pulumi.Input

	ToFolderFeedFeedOutputConfigOutput() FolderFeedFeedOutputConfigOutput
	ToFolderFeedFeedOutputConfigOutputWithContext(context.Context) FolderFeedFeedOutputConfigOutput
}

FolderFeedFeedOutputConfigInput is an input type that accepts FolderFeedFeedOutputConfigArgs and FolderFeedFeedOutputConfigOutput values. You can construct a concrete instance of `FolderFeedFeedOutputConfigInput` via:

FolderFeedFeedOutputConfigArgs{...}

type FolderFeedFeedOutputConfigOutput

type FolderFeedFeedOutputConfigOutput struct{ *pulumi.OutputState }

func (FolderFeedFeedOutputConfigOutput) ElementType

func (FolderFeedFeedOutputConfigOutput) PubsubDestination

Destination on Cloud Pubsub. Structure is documented below.

func (FolderFeedFeedOutputConfigOutput) ToFolderFeedFeedOutputConfigOutput

func (o FolderFeedFeedOutputConfigOutput) ToFolderFeedFeedOutputConfigOutput() FolderFeedFeedOutputConfigOutput

func (FolderFeedFeedOutputConfigOutput) ToFolderFeedFeedOutputConfigOutputWithContext

func (o FolderFeedFeedOutputConfigOutput) ToFolderFeedFeedOutputConfigOutputWithContext(ctx context.Context) FolderFeedFeedOutputConfigOutput

func (FolderFeedFeedOutputConfigOutput) ToFolderFeedFeedOutputConfigPtrOutput

func (o FolderFeedFeedOutputConfigOutput) ToFolderFeedFeedOutputConfigPtrOutput() FolderFeedFeedOutputConfigPtrOutput

func (FolderFeedFeedOutputConfigOutput) ToFolderFeedFeedOutputConfigPtrOutputWithContext

func (o FolderFeedFeedOutputConfigOutput) ToFolderFeedFeedOutputConfigPtrOutputWithContext(ctx context.Context) FolderFeedFeedOutputConfigPtrOutput

type FolderFeedFeedOutputConfigPtrInput

type FolderFeedFeedOutputConfigPtrInput interface {
	pulumi.Input

	ToFolderFeedFeedOutputConfigPtrOutput() FolderFeedFeedOutputConfigPtrOutput
	ToFolderFeedFeedOutputConfigPtrOutputWithContext(context.Context) FolderFeedFeedOutputConfigPtrOutput
}

FolderFeedFeedOutputConfigPtrInput is an input type that accepts FolderFeedFeedOutputConfigArgs, FolderFeedFeedOutputConfigPtr and FolderFeedFeedOutputConfigPtrOutput values. You can construct a concrete instance of `FolderFeedFeedOutputConfigPtrInput` via:

        FolderFeedFeedOutputConfigArgs{...}

or:

        nil

type FolderFeedFeedOutputConfigPtrOutput

type FolderFeedFeedOutputConfigPtrOutput struct{ *pulumi.OutputState }

func (FolderFeedFeedOutputConfigPtrOutput) Elem

func (FolderFeedFeedOutputConfigPtrOutput) ElementType

func (FolderFeedFeedOutputConfigPtrOutput) PubsubDestination

Destination on Cloud Pubsub. Structure is documented below.

func (FolderFeedFeedOutputConfigPtrOutput) ToFolderFeedFeedOutputConfigPtrOutput

func (o FolderFeedFeedOutputConfigPtrOutput) ToFolderFeedFeedOutputConfigPtrOutput() FolderFeedFeedOutputConfigPtrOutput

func (FolderFeedFeedOutputConfigPtrOutput) ToFolderFeedFeedOutputConfigPtrOutputWithContext

func (o FolderFeedFeedOutputConfigPtrOutput) ToFolderFeedFeedOutputConfigPtrOutputWithContext(ctx context.Context) FolderFeedFeedOutputConfigPtrOutput

type FolderFeedFeedOutputConfigPubsubDestination

type FolderFeedFeedOutputConfigPubsubDestination struct {
	// Destination on Cloud Pubsub topic.
	//
	// ***
	Topic string `pulumi:"topic"`
}

type FolderFeedFeedOutputConfigPubsubDestinationArgs

type FolderFeedFeedOutputConfigPubsubDestinationArgs struct {
	// Destination on Cloud Pubsub topic.
	//
	// ***
	Topic pulumi.StringInput `pulumi:"topic"`
}

func (FolderFeedFeedOutputConfigPubsubDestinationArgs) ElementType

func (FolderFeedFeedOutputConfigPubsubDestinationArgs) ToFolderFeedFeedOutputConfigPubsubDestinationOutput

func (i FolderFeedFeedOutputConfigPubsubDestinationArgs) ToFolderFeedFeedOutputConfigPubsubDestinationOutput() FolderFeedFeedOutputConfigPubsubDestinationOutput

func (FolderFeedFeedOutputConfigPubsubDestinationArgs) ToFolderFeedFeedOutputConfigPubsubDestinationOutputWithContext

func (i FolderFeedFeedOutputConfigPubsubDestinationArgs) ToFolderFeedFeedOutputConfigPubsubDestinationOutputWithContext(ctx context.Context) FolderFeedFeedOutputConfigPubsubDestinationOutput

func (FolderFeedFeedOutputConfigPubsubDestinationArgs) ToFolderFeedFeedOutputConfigPubsubDestinationPtrOutput

func (i FolderFeedFeedOutputConfigPubsubDestinationArgs) ToFolderFeedFeedOutputConfigPubsubDestinationPtrOutput() FolderFeedFeedOutputConfigPubsubDestinationPtrOutput

func (FolderFeedFeedOutputConfigPubsubDestinationArgs) ToFolderFeedFeedOutputConfigPubsubDestinationPtrOutputWithContext

func (i FolderFeedFeedOutputConfigPubsubDestinationArgs) ToFolderFeedFeedOutputConfigPubsubDestinationPtrOutputWithContext(ctx context.Context) FolderFeedFeedOutputConfigPubsubDestinationPtrOutput

type FolderFeedFeedOutputConfigPubsubDestinationInput

type FolderFeedFeedOutputConfigPubsubDestinationInput interface {
	pulumi.Input

	ToFolderFeedFeedOutputConfigPubsubDestinationOutput() FolderFeedFeedOutputConfigPubsubDestinationOutput
	ToFolderFeedFeedOutputConfigPubsubDestinationOutputWithContext(context.Context) FolderFeedFeedOutputConfigPubsubDestinationOutput
}

FolderFeedFeedOutputConfigPubsubDestinationInput is an input type that accepts FolderFeedFeedOutputConfigPubsubDestinationArgs and FolderFeedFeedOutputConfigPubsubDestinationOutput values. You can construct a concrete instance of `FolderFeedFeedOutputConfigPubsubDestinationInput` via:

FolderFeedFeedOutputConfigPubsubDestinationArgs{...}

type FolderFeedFeedOutputConfigPubsubDestinationOutput

type FolderFeedFeedOutputConfigPubsubDestinationOutput struct{ *pulumi.OutputState }

func (FolderFeedFeedOutputConfigPubsubDestinationOutput) ElementType

func (FolderFeedFeedOutputConfigPubsubDestinationOutput) ToFolderFeedFeedOutputConfigPubsubDestinationOutput

func (o FolderFeedFeedOutputConfigPubsubDestinationOutput) ToFolderFeedFeedOutputConfigPubsubDestinationOutput() FolderFeedFeedOutputConfigPubsubDestinationOutput

func (FolderFeedFeedOutputConfigPubsubDestinationOutput) ToFolderFeedFeedOutputConfigPubsubDestinationOutputWithContext

func (o FolderFeedFeedOutputConfigPubsubDestinationOutput) ToFolderFeedFeedOutputConfigPubsubDestinationOutputWithContext(ctx context.Context) FolderFeedFeedOutputConfigPubsubDestinationOutput

func (FolderFeedFeedOutputConfigPubsubDestinationOutput) ToFolderFeedFeedOutputConfigPubsubDestinationPtrOutput

func (o FolderFeedFeedOutputConfigPubsubDestinationOutput) ToFolderFeedFeedOutputConfigPubsubDestinationPtrOutput() FolderFeedFeedOutputConfigPubsubDestinationPtrOutput

func (FolderFeedFeedOutputConfigPubsubDestinationOutput) ToFolderFeedFeedOutputConfigPubsubDestinationPtrOutputWithContext

func (o FolderFeedFeedOutputConfigPubsubDestinationOutput) ToFolderFeedFeedOutputConfigPubsubDestinationPtrOutputWithContext(ctx context.Context) FolderFeedFeedOutputConfigPubsubDestinationPtrOutput

func (FolderFeedFeedOutputConfigPubsubDestinationOutput) Topic

Destination on Cloud Pubsub topic.

***

type FolderFeedFeedOutputConfigPubsubDestinationPtrInput

type FolderFeedFeedOutputConfigPubsubDestinationPtrInput interface {
	pulumi.Input

	ToFolderFeedFeedOutputConfigPubsubDestinationPtrOutput() FolderFeedFeedOutputConfigPubsubDestinationPtrOutput
	ToFolderFeedFeedOutputConfigPubsubDestinationPtrOutputWithContext(context.Context) FolderFeedFeedOutputConfigPubsubDestinationPtrOutput
}

FolderFeedFeedOutputConfigPubsubDestinationPtrInput is an input type that accepts FolderFeedFeedOutputConfigPubsubDestinationArgs, FolderFeedFeedOutputConfigPubsubDestinationPtr and FolderFeedFeedOutputConfigPubsubDestinationPtrOutput values. You can construct a concrete instance of `FolderFeedFeedOutputConfigPubsubDestinationPtrInput` via:

        FolderFeedFeedOutputConfigPubsubDestinationArgs{...}

or:

        nil

type FolderFeedFeedOutputConfigPubsubDestinationPtrOutput

type FolderFeedFeedOutputConfigPubsubDestinationPtrOutput struct{ *pulumi.OutputState }

func (FolderFeedFeedOutputConfigPubsubDestinationPtrOutput) Elem

func (FolderFeedFeedOutputConfigPubsubDestinationPtrOutput) ElementType

func (FolderFeedFeedOutputConfigPubsubDestinationPtrOutput) ToFolderFeedFeedOutputConfigPubsubDestinationPtrOutput

func (FolderFeedFeedOutputConfigPubsubDestinationPtrOutput) ToFolderFeedFeedOutputConfigPubsubDestinationPtrOutputWithContext

func (o FolderFeedFeedOutputConfigPubsubDestinationPtrOutput) ToFolderFeedFeedOutputConfigPubsubDestinationPtrOutputWithContext(ctx context.Context) FolderFeedFeedOutputConfigPubsubDestinationPtrOutput

func (FolderFeedFeedOutputConfigPubsubDestinationPtrOutput) Topic

Destination on Cloud Pubsub topic.

***

type FolderFeedInput

type FolderFeedInput interface {
	pulumi.Input

	ToFolderFeedOutput() FolderFeedOutput
	ToFolderFeedOutputWithContext(ctx context.Context) FolderFeedOutput
}

type FolderFeedMap

type FolderFeedMap map[string]FolderFeedInput

func (FolderFeedMap) ElementType

func (FolderFeedMap) ElementType() reflect.Type

func (FolderFeedMap) ToFolderFeedMapOutput

func (i FolderFeedMap) ToFolderFeedMapOutput() FolderFeedMapOutput

func (FolderFeedMap) ToFolderFeedMapOutputWithContext

func (i FolderFeedMap) ToFolderFeedMapOutputWithContext(ctx context.Context) FolderFeedMapOutput

type FolderFeedMapInput

type FolderFeedMapInput interface {
	pulumi.Input

	ToFolderFeedMapOutput() FolderFeedMapOutput
	ToFolderFeedMapOutputWithContext(context.Context) FolderFeedMapOutput
}

FolderFeedMapInput is an input type that accepts FolderFeedMap and FolderFeedMapOutput values. You can construct a concrete instance of `FolderFeedMapInput` via:

FolderFeedMap{ "key": FolderFeedArgs{...} }

type FolderFeedMapOutput

type FolderFeedMapOutput struct{ *pulumi.OutputState }

func (FolderFeedMapOutput) ElementType

func (FolderFeedMapOutput) ElementType() reflect.Type

func (FolderFeedMapOutput) MapIndex

func (FolderFeedMapOutput) ToFolderFeedMapOutput

func (o FolderFeedMapOutput) ToFolderFeedMapOutput() FolderFeedMapOutput

func (FolderFeedMapOutput) ToFolderFeedMapOutputWithContext

func (o FolderFeedMapOutput) ToFolderFeedMapOutputWithContext(ctx context.Context) FolderFeedMapOutput

type FolderFeedOutput

type FolderFeedOutput struct{ *pulumi.OutputState }

func (FolderFeedOutput) AssetNames

func (o FolderFeedOutput) AssetNames() pulumi.StringArrayOutput

A list of the full names of the assets to receive updates. You must specify either or both of assetNames and assetTypes. Only asset updates matching specified assetNames and assetTypes are exported to the feed. For example: //compute.googleapis.com/projects/my_project_123/zones/zone1/instances/instance1. See https://cloud.google.com/apis/design/resourceNames#fullResourceName for more info.

func (FolderFeedOutput) AssetTypes

func (o FolderFeedOutput) AssetTypes() pulumi.StringArrayOutput

A list of types of the assets to receive updates. You must specify either or both of assetNames and assetTypes. Only asset updates matching specified assetNames and assetTypes are exported to the feed. For example: "compute.googleapis.com/Disk" See https://cloud.google.com/asset-inventory/docs/supported-asset-types for a list of all supported asset types.

func (FolderFeedOutput) BillingProject

func (o FolderFeedOutput) BillingProject() pulumi.StringOutput

The project whose identity will be used when sending messages to the destination pubsub topic. It also specifies the project for API enablement check, quota, and billing.

func (FolderFeedOutput) Condition

A condition which determines whether an asset update should be published. If specified, an asset will be returned only when the expression evaluates to true. When set, expression field must be a valid CEL expression on a TemporalAsset with name temporal_asset. Example: a Feed with expression "temporal_asset.deleted == true" will only publish Asset deletions. Other fields of condition are optional.

func (FolderFeedOutput) ContentType

func (o FolderFeedOutput) ContentType() pulumi.StringPtrOutput

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", "OS_INVENTORY", "ACCESS_POLICY"]

func (FolderFeedOutput) ElementType

func (FolderFeedOutput) ElementType() reflect.Type

func (FolderFeedOutput) FeedId

This is the client-assigned asset feed identifier and it needs to be unique under a specific parent.

func (FolderFeedOutput) FeedOutputConfig

Output configuration for asset feed destination. Structure is documented below.

func (FolderFeedOutput) Folder

The folder this feed should be created in.

func (FolderFeedOutput) FolderId

func (o FolderFeedOutput) FolderId() pulumi.StringOutput

The ID of the folder where this feed has been created. Both [FOLDER_NUMBER] and folders/[FOLDER_NUMBER] are accepted.

func (FolderFeedOutput) Name

The format will be folders/{folder_number}/feeds/{client-assigned_feed_identifier}.

func (FolderFeedOutput) ToFolderFeedOutput

func (o FolderFeedOutput) ToFolderFeedOutput() FolderFeedOutput

func (FolderFeedOutput) ToFolderFeedOutputWithContext

func (o FolderFeedOutput) ToFolderFeedOutputWithContext(ctx context.Context) FolderFeedOutput

type FolderFeedState

type FolderFeedState struct {
	// A list of the full names of the assets to receive updates. You must specify either or both of assetNames and assetTypes.
	// Only asset updates matching specified assetNames and assetTypes are exported to the feed. For example:
	// //compute.googleapis.com/projects/my_project_123/zones/zone1/instances/instance1. See
	// https://cloud.google.com/apis/design/resourceNames#fullResourceName for more info.
	AssetNames pulumi.StringArrayInput
	// A list of types of the assets to receive updates. You must specify either or both of assetNames and assetTypes. Only
	// asset updates matching specified assetNames and assetTypes are exported to the feed. For example:
	// "compute.googleapis.com/Disk" See https://cloud.google.com/asset-inventory/docs/supported-asset-types for a list of all
	// supported asset types.
	AssetTypes pulumi.StringArrayInput
	// The project whose identity will be used when sending messages to the
	// destination pubsub topic. It also specifies the project for API
	// enablement check, quota, and billing.
	BillingProject pulumi.StringPtrInput
	// A condition which determines whether an asset update should be published. If specified, an asset will be returned only
	// when the expression evaluates to true. When set, expression field must be a valid CEL expression on a TemporalAsset with
	// name temporal_asset. Example: a Feed with expression "temporal_asset.deleted == true" will only publish Asset deletions.
	// Other fields of condition are optional.
	Condition FolderFeedConditionPtrInput
	// 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", "OS_INVENTORY", "ACCESS_POLICY"]
	ContentType pulumi.StringPtrInput
	// This is the client-assigned asset feed identifier and it needs to be unique under a specific parent.
	FeedId pulumi.StringPtrInput
	// Output configuration for asset feed destination.
	// Structure is documented below.
	FeedOutputConfig FolderFeedFeedOutputConfigPtrInput
	// The folder this feed should be created in.
	Folder pulumi.StringPtrInput
	// The ID of the folder where this feed has been created. Both [FOLDER_NUMBER]
	// and folders/[FOLDER_NUMBER] are accepted.
	FolderId pulumi.StringPtrInput
	// The format will be folders/{folder_number}/feeds/{client-assigned_feed_identifier}.
	Name pulumi.StringPtrInput
}

func (FolderFeedState) ElementType

func (FolderFeedState) ElementType() reflect.Type

type GetResourcesSearchAllResult

type GetResourcesSearchAllResult struct {
	// Additional searchable attributes of this resource. Informational only. The exact set of attributes is subject to change. For example: project id, DNS name etc.
	AdditionalAttributes []string `pulumi:"additionalAttributes"`
	// The type of this resource.
	AssetType string `pulumi:"assetType"`
	// One or more paragraphs of text description of this resource. Maximum length could be up to 1M bytes.
	Description string `pulumi:"description"`
	// The display name of this resource.
	DisplayName string `pulumi:"displayName"`
	// Labels associated with this resource.
	Labels map[string]string `pulumi:"labels"`
	// Location can be `global`, regional like `us-east1`, or zonal like `us-west1-b`.
	Location string `pulumi:"location"`
	// The full resource name. See [Resource Names](https://cloud.google.com/apis/design/resource_names#full_resource_name) for more information.
	Name string `pulumi:"name"`
	// Network tags associated with this resource.
	NetworkTags []string `pulumi:"networkTags"`
	// The project that this resource belongs to, in the form of `projects/{project_number}`.
	Project string `pulumi:"project"`
}

type GetResourcesSearchAllResultArgs

type GetResourcesSearchAllResultArgs struct {
	// Additional searchable attributes of this resource. Informational only. The exact set of attributes is subject to change. For example: project id, DNS name etc.
	AdditionalAttributes pulumi.StringArrayInput `pulumi:"additionalAttributes"`
	// The type of this resource.
	AssetType pulumi.StringInput `pulumi:"assetType"`
	// One or more paragraphs of text description of this resource. Maximum length could be up to 1M bytes.
	Description pulumi.StringInput `pulumi:"description"`
	// The display name of this resource.
	DisplayName pulumi.StringInput `pulumi:"displayName"`
	// Labels associated with this resource.
	Labels pulumi.StringMapInput `pulumi:"labels"`
	// Location can be `global`, regional like `us-east1`, or zonal like `us-west1-b`.
	Location pulumi.StringInput `pulumi:"location"`
	// The full resource name. See [Resource Names](https://cloud.google.com/apis/design/resource_names#full_resource_name) for more information.
	Name pulumi.StringInput `pulumi:"name"`
	// Network tags associated with this resource.
	NetworkTags pulumi.StringArrayInput `pulumi:"networkTags"`
	// The project that this resource belongs to, in the form of `projects/{project_number}`.
	Project pulumi.StringInput `pulumi:"project"`
}

func (GetResourcesSearchAllResultArgs) ElementType

func (GetResourcesSearchAllResultArgs) ToGetResourcesSearchAllResultOutput

func (i GetResourcesSearchAllResultArgs) ToGetResourcesSearchAllResultOutput() GetResourcesSearchAllResultOutput

func (GetResourcesSearchAllResultArgs) ToGetResourcesSearchAllResultOutputWithContext

func (i GetResourcesSearchAllResultArgs) ToGetResourcesSearchAllResultOutputWithContext(ctx context.Context) GetResourcesSearchAllResultOutput

type GetResourcesSearchAllResultArray

type GetResourcesSearchAllResultArray []GetResourcesSearchAllResultInput

func (GetResourcesSearchAllResultArray) ElementType

func (GetResourcesSearchAllResultArray) ToGetResourcesSearchAllResultArrayOutput

func (i GetResourcesSearchAllResultArray) ToGetResourcesSearchAllResultArrayOutput() GetResourcesSearchAllResultArrayOutput

func (GetResourcesSearchAllResultArray) ToGetResourcesSearchAllResultArrayOutputWithContext

func (i GetResourcesSearchAllResultArray) ToGetResourcesSearchAllResultArrayOutputWithContext(ctx context.Context) GetResourcesSearchAllResultArrayOutput

type GetResourcesSearchAllResultArrayInput

type GetResourcesSearchAllResultArrayInput interface {
	pulumi.Input

	ToGetResourcesSearchAllResultArrayOutput() GetResourcesSearchAllResultArrayOutput
	ToGetResourcesSearchAllResultArrayOutputWithContext(context.Context) GetResourcesSearchAllResultArrayOutput
}

GetResourcesSearchAllResultArrayInput is an input type that accepts GetResourcesSearchAllResultArray and GetResourcesSearchAllResultArrayOutput values. You can construct a concrete instance of `GetResourcesSearchAllResultArrayInput` via:

GetResourcesSearchAllResultArray{ GetResourcesSearchAllResultArgs{...} }

type GetResourcesSearchAllResultArrayOutput

type GetResourcesSearchAllResultArrayOutput struct{ *pulumi.OutputState }

func (GetResourcesSearchAllResultArrayOutput) ElementType

func (GetResourcesSearchAllResultArrayOutput) Index

func (GetResourcesSearchAllResultArrayOutput) ToGetResourcesSearchAllResultArrayOutput

func (o GetResourcesSearchAllResultArrayOutput) ToGetResourcesSearchAllResultArrayOutput() GetResourcesSearchAllResultArrayOutput

func (GetResourcesSearchAllResultArrayOutput) ToGetResourcesSearchAllResultArrayOutputWithContext

func (o GetResourcesSearchAllResultArrayOutput) ToGetResourcesSearchAllResultArrayOutputWithContext(ctx context.Context) GetResourcesSearchAllResultArrayOutput

type GetResourcesSearchAllResultInput

type GetResourcesSearchAllResultInput interface {
	pulumi.Input

	ToGetResourcesSearchAllResultOutput() GetResourcesSearchAllResultOutput
	ToGetResourcesSearchAllResultOutputWithContext(context.Context) GetResourcesSearchAllResultOutput
}

GetResourcesSearchAllResultInput is an input type that accepts GetResourcesSearchAllResultArgs and GetResourcesSearchAllResultOutput values. You can construct a concrete instance of `GetResourcesSearchAllResultInput` via:

GetResourcesSearchAllResultArgs{...}

type GetResourcesSearchAllResultOutput

type GetResourcesSearchAllResultOutput struct{ *pulumi.OutputState }

func (GetResourcesSearchAllResultOutput) AdditionalAttributes

Additional searchable attributes of this resource. Informational only. The exact set of attributes is subject to change. For example: project id, DNS name etc.

func (GetResourcesSearchAllResultOutput) AssetType

The type of this resource.

func (GetResourcesSearchAllResultOutput) Description

One or more paragraphs of text description of this resource. Maximum length could be up to 1M bytes.

func (GetResourcesSearchAllResultOutput) DisplayName

The display name of this resource.

func (GetResourcesSearchAllResultOutput) ElementType

func (GetResourcesSearchAllResultOutput) Labels

Labels associated with this resource.

func (GetResourcesSearchAllResultOutput) Location

Location can be `global`, regional like `us-east1`, or zonal like `us-west1-b`.

func (GetResourcesSearchAllResultOutput) Name

The full resource name. See [Resource Names](https://cloud.google.com/apis/design/resource_names#full_resource_name) for more information.

func (GetResourcesSearchAllResultOutput) NetworkTags

Network tags associated with this resource.

func (GetResourcesSearchAllResultOutput) Project

The project that this resource belongs to, in the form of `projects/{project_number}`.

func (GetResourcesSearchAllResultOutput) ToGetResourcesSearchAllResultOutput

func (o GetResourcesSearchAllResultOutput) ToGetResourcesSearchAllResultOutput() GetResourcesSearchAllResultOutput

func (GetResourcesSearchAllResultOutput) ToGetResourcesSearchAllResultOutputWithContext

func (o GetResourcesSearchAllResultOutput) ToGetResourcesSearchAllResultOutputWithContext(ctx context.Context) GetResourcesSearchAllResultOutput

type LookupResourcesSearchAllArgs

type LookupResourcesSearchAllArgs struct {
	// A list of asset types that this request searches for. If empty, it will search all the [supported asset types](https://cloud.google.com/asset-inventory/docs/supported-asset-types).
	AssetTypes []string `pulumi:"assetTypes"`
	// The query statement. See [how to construct a query](https://cloud.google.com/asset-inventory/docs/searching-resources#how_to_construct_a_query) for more information. If not specified or empty, it will search all the resources within the specified `scope` and `assetTypes`.
	Query *string `pulumi:"query"`
	// A scope can be a project, a folder, or an organization. The allowed value must be: organization number (such as "organizations/123"), folder number (such as "folders/1234"), project number (such as "projects/12345") or project id (such as "projects/abc")
	Scope string `pulumi:"scope"`
}

A collection of arguments for invoking getResourcesSearchAll.

type LookupResourcesSearchAllOutputArgs

type LookupResourcesSearchAllOutputArgs struct {
	// A list of asset types that this request searches for. If empty, it will search all the [supported asset types](https://cloud.google.com/asset-inventory/docs/supported-asset-types).
	AssetTypes pulumi.StringArrayInput `pulumi:"assetTypes"`
	// The query statement. See [how to construct a query](https://cloud.google.com/asset-inventory/docs/searching-resources#how_to_construct_a_query) for more information. If not specified or empty, it will search all the resources within the specified `scope` and `assetTypes`.
	Query pulumi.StringPtrInput `pulumi:"query"`
	// A scope can be a project, a folder, or an organization. The allowed value must be: organization number (such as "organizations/123"), folder number (such as "folders/1234"), project number (such as "projects/12345") or project id (such as "projects/abc")
	Scope pulumi.StringInput `pulumi:"scope"`
}

A collection of arguments for invoking getResourcesSearchAll.

func (LookupResourcesSearchAllOutputArgs) ElementType

type LookupResourcesSearchAllResult

type LookupResourcesSearchAllResult struct {
	AssetTypes []string `pulumi:"assetTypes"`
	// The provider-assigned unique ID for this managed resource.
	Id    string  `pulumi:"id"`
	Query *string `pulumi:"query"`
	// A list of search results based on provided inputs. Structure is defined below.
	Results []GetResourcesSearchAllResult `pulumi:"results"`
	Scope   string                        `pulumi:"scope"`
}

A collection of values returned by getResourcesSearchAll.

func LookupResourcesSearchAll

func LookupResourcesSearchAll(ctx *pulumi.Context, args *LookupResourcesSearchAllArgs, opts ...pulumi.InvokeOption) (*LookupResourcesSearchAllResult, error)

## Example Usage

### Searching For All Projects In An Org

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/cloudasset"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := cloudasset.LookupResourcesSearchAll(ctx, &cloudasset.LookupResourcesSearchAllArgs{
			Scope: "organizations/0123456789",
			AssetTypes: []string{
				"cloudresourcemanager.googleapis.com/Project",
			},
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

### Searching For All Projects With CloudBuild API Enabled

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/cloudasset"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := cloudasset.LookupResourcesSearchAll(ctx, &cloudasset.LookupResourcesSearchAllArgs{
			Scope: "organizations/0123456789",
			AssetTypes: []string{
				"serviceusage.googleapis.com/Service",
			},
			Query: pulumi.StringRef("displayName:cloudbuild.googleapis.com AND state:ENABLED"),
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

### Searching For All Service Accounts In A Project

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/cloudasset"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := cloudasset.LookupResourcesSearchAll(ctx, &cloudasset.LookupResourcesSearchAllArgs{
			Scope: "projects/my-project-id",
			AssetTypes: []string{
				"iam.googleapis.com/ServiceAccount",
			},
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type LookupResourcesSearchAllResultOutput

type LookupResourcesSearchAllResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getResourcesSearchAll.

func (LookupResourcesSearchAllResultOutput) AssetTypes

func (LookupResourcesSearchAllResultOutput) ElementType

func (LookupResourcesSearchAllResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (LookupResourcesSearchAllResultOutput) Query

func (LookupResourcesSearchAllResultOutput) Results

A list of search results based on provided inputs. Structure is defined below.

func (LookupResourcesSearchAllResultOutput) Scope

func (LookupResourcesSearchAllResultOutput) ToLookupResourcesSearchAllResultOutput

func (o LookupResourcesSearchAllResultOutput) ToLookupResourcesSearchAllResultOutput() LookupResourcesSearchAllResultOutput

func (LookupResourcesSearchAllResultOutput) ToLookupResourcesSearchAllResultOutputWithContext

func (o LookupResourcesSearchAllResultOutput) ToLookupResourcesSearchAllResultOutputWithContext(ctx context.Context) LookupResourcesSearchAllResultOutput

type OrganizationFeed

type OrganizationFeed struct {
	pulumi.CustomResourceState

	// A list of the full names of the assets to receive updates. You must specify either or both of assetNames and assetTypes.
	// Only asset updates matching specified assetNames and assetTypes are exported to the feed. For example:
	// //compute.googleapis.com/projects/my_project_123/zones/zone1/instances/instance1. See
	// https://cloud.google.com/apis/design/resourceNames#fullResourceName for more info.
	AssetNames pulumi.StringArrayOutput `pulumi:"assetNames"`
	// A list of types of the assets to receive updates. You must specify either or both of assetNames and assetTypes. Only
	// asset updates matching specified assetNames and assetTypes are exported to the feed. For example:
	// "compute.googleapis.com/Disk" See https://cloud.google.com/asset-inventory/docs/supported-asset-types for a list of all
	// supported asset types.
	AssetTypes pulumi.StringArrayOutput `pulumi:"assetTypes"`
	// The project whose identity will be used when sending messages to the
	// destination pubsub topic. It also specifies the project for API
	// enablement check, quota, and billing.
	BillingProject pulumi.StringOutput `pulumi:"billingProject"`
	// A condition which determines whether an asset update should be published. If specified, an asset will be returned only
	// when the expression evaluates to true. When set, expression field must be a valid CEL expression on a TemporalAsset with
	// name temporal_asset. Example: a Feed with expression "temporal_asset.deleted == true" will only publish Asset deletions.
	// Other fields of condition are optional.
	Condition OrganizationFeedConditionPtrOutput `pulumi:"condition"`
	// 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", "OS_INVENTORY", "ACCESS_POLICY"]
	ContentType pulumi.StringPtrOutput `pulumi:"contentType"`
	// This is the client-assigned asset feed identifier and it needs to be unique under a specific parent.
	FeedId pulumi.StringOutput `pulumi:"feedId"`
	// Output configuration for asset feed destination.
	// Structure is documented below.
	FeedOutputConfig OrganizationFeedFeedOutputConfigOutput `pulumi:"feedOutputConfig"`
	// The format will be organizations/{organization_number}/feeds/{client-assigned_feed_identifier}.
	Name pulumi.StringOutput `pulumi:"name"`
	// The organization this feed should be created in.
	OrgId pulumi.StringOutput `pulumi:"orgId"`
}

Describes a Cloud Asset Inventory feed used to to listen to asset updates.

To get more information about OrganizationFeed, see:

* [API documentation](https://cloud.google.com/asset-inventory/docs/reference/rest/) * How-to Guides

## Example Usage

### Cloud Asset Organization Feed

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/cloudasset"
"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/organizations"
"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/pubsub"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		// The topic where the resource change notifications will be sent.
		feedOutput, err := pubsub.NewTopic(ctx, "feed_output", &pubsub.TopicArgs{
			Project: pulumi.String("my-project-name"),
			Name:    pulumi.String("network-updates"),
		})
		if err != nil {
			return err
		}
		// Create a feed that sends notifications about network resource updates under a
		// particular organization.
		_, err = cloudasset.NewOrganizationFeed(ctx, "organization_feed", &cloudasset.OrganizationFeedArgs{
			BillingProject: pulumi.String("my-project-name"),
			OrgId:          pulumi.String("123456789"),
			FeedId:         pulumi.String("network-updates"),
			ContentType:    pulumi.String("RESOURCE"),
			AssetTypes: pulumi.StringArray{
				pulumi.String("compute.googleapis.com/Subnetwork"),
				pulumi.String("compute.googleapis.com/Network"),
			},
			FeedOutputConfig: &cloudasset.OrganizationFeedFeedOutputConfigArgs{
				PubsubDestination: &cloudasset.OrganizationFeedFeedOutputConfigPubsubDestinationArgs{
					Topic: feedOutput.ID(),
				},
			},
			Condition: &cloudasset.OrganizationFeedConditionArgs{
				Expression:  pulumi.String("!temporal_asset.deleted &&\ntemporal_asset.prior_asset_state == google.cloud.asset.v1.TemporalAsset.PriorAssetState.DOES_NOT_EXIST\n"),
				Title:       pulumi.String("created"),
				Description: pulumi.String("Send notifications on creation events"),
			},
		})
		if err != nil {
			return err
		}
		// Find the project number of the project whose identity will be used for sending
		// the asset change notifications.
		_, err = organizations.LookupProject(ctx, &organizations.LookupProjectArgs{
			ProjectId: pulumi.StringRef("my-project-name"),
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

OrganizationFeed can be imported using any of these accepted formats:

* `organizations/{{org_id}}/feeds/{{name}}`

* `{{org_id}}/{{name}}`

When using the `pulumi import` command, OrganizationFeed can be imported using one of the formats above. For example:

```sh $ pulumi import gcp:cloudasset/organizationFeed:OrganizationFeed default organizations/{{org_id}}/feeds/{{name}} ```

```sh $ pulumi import gcp:cloudasset/organizationFeed:OrganizationFeed default {{org_id}}/{{name}} ```

func GetOrganizationFeed

func GetOrganizationFeed(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *OrganizationFeedState, opts ...pulumi.ResourceOption) (*OrganizationFeed, error)

GetOrganizationFeed gets an existing OrganizationFeed resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewOrganizationFeed

func NewOrganizationFeed(ctx *pulumi.Context,
	name string, args *OrganizationFeedArgs, opts ...pulumi.ResourceOption) (*OrganizationFeed, error)

NewOrganizationFeed registers a new resource with the given unique name, arguments, and options.

func (*OrganizationFeed) ElementType

func (*OrganizationFeed) ElementType() reflect.Type

func (*OrganizationFeed) ToOrganizationFeedOutput

func (i *OrganizationFeed) ToOrganizationFeedOutput() OrganizationFeedOutput

func (*OrganizationFeed) ToOrganizationFeedOutputWithContext

func (i *OrganizationFeed) ToOrganizationFeedOutputWithContext(ctx context.Context) OrganizationFeedOutput

type OrganizationFeedArgs

type OrganizationFeedArgs struct {
	// A list of the full names of the assets to receive updates. You must specify either or both of assetNames and assetTypes.
	// Only asset updates matching specified assetNames and assetTypes are exported to the feed. For example:
	// //compute.googleapis.com/projects/my_project_123/zones/zone1/instances/instance1. See
	// https://cloud.google.com/apis/design/resourceNames#fullResourceName for more info.
	AssetNames pulumi.StringArrayInput
	// A list of types of the assets to receive updates. You must specify either or both of assetNames and assetTypes. Only
	// asset updates matching specified assetNames and assetTypes are exported to the feed. For example:
	// "compute.googleapis.com/Disk" See https://cloud.google.com/asset-inventory/docs/supported-asset-types for a list of all
	// supported asset types.
	AssetTypes pulumi.StringArrayInput
	// The project whose identity will be used when sending messages to the
	// destination pubsub topic. It also specifies the project for API
	// enablement check, quota, and billing.
	BillingProject pulumi.StringInput
	// A condition which determines whether an asset update should be published. If specified, an asset will be returned only
	// when the expression evaluates to true. When set, expression field must be a valid CEL expression on a TemporalAsset with
	// name temporal_asset. Example: a Feed with expression "temporal_asset.deleted == true" will only publish Asset deletions.
	// Other fields of condition are optional.
	Condition OrganizationFeedConditionPtrInput
	// 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", "OS_INVENTORY", "ACCESS_POLICY"]
	ContentType pulumi.StringPtrInput
	// This is the client-assigned asset feed identifier and it needs to be unique under a specific parent.
	FeedId pulumi.StringInput
	// Output configuration for asset feed destination.
	// Structure is documented below.
	FeedOutputConfig OrganizationFeedFeedOutputConfigInput
	// The organization this feed should be created in.
	OrgId pulumi.StringInput
}

The set of arguments for constructing a OrganizationFeed resource.

func (OrganizationFeedArgs) ElementType

func (OrganizationFeedArgs) ElementType() reflect.Type

type OrganizationFeedArray

type OrganizationFeedArray []OrganizationFeedInput

func (OrganizationFeedArray) ElementType

func (OrganizationFeedArray) ElementType() reflect.Type

func (OrganizationFeedArray) ToOrganizationFeedArrayOutput

func (i OrganizationFeedArray) ToOrganizationFeedArrayOutput() OrganizationFeedArrayOutput

func (OrganizationFeedArray) ToOrganizationFeedArrayOutputWithContext

func (i OrganizationFeedArray) ToOrganizationFeedArrayOutputWithContext(ctx context.Context) OrganizationFeedArrayOutput

type OrganizationFeedArrayInput

type OrganizationFeedArrayInput interface {
	pulumi.Input

	ToOrganizationFeedArrayOutput() OrganizationFeedArrayOutput
	ToOrganizationFeedArrayOutputWithContext(context.Context) OrganizationFeedArrayOutput
}

OrganizationFeedArrayInput is an input type that accepts OrganizationFeedArray and OrganizationFeedArrayOutput values. You can construct a concrete instance of `OrganizationFeedArrayInput` via:

OrganizationFeedArray{ OrganizationFeedArgs{...} }

type OrganizationFeedArrayOutput

type OrganizationFeedArrayOutput struct{ *pulumi.OutputState }

func (OrganizationFeedArrayOutput) ElementType

func (OrganizationFeedArrayOutput) Index

func (OrganizationFeedArrayOutput) ToOrganizationFeedArrayOutput

func (o OrganizationFeedArrayOutput) ToOrganizationFeedArrayOutput() OrganizationFeedArrayOutput

func (OrganizationFeedArrayOutput) ToOrganizationFeedArrayOutputWithContext

func (o OrganizationFeedArrayOutput) ToOrganizationFeedArrayOutputWithContext(ctx context.Context) OrganizationFeedArrayOutput

type OrganizationFeedCondition

type OrganizationFeedCondition struct {
	// Description of the expression. This is a longer text which describes the expression,
	// e.g. when hovered over it in a UI.
	Description *string `pulumi:"description"`
	// Textual representation of an expression in Common Expression Language syntax.
	Expression string `pulumi:"expression"`
	// String indicating the location of the expression for error reporting, e.g. a file
	// name and a position in the file.
	Location *string `pulumi:"location"`
	// Title for the expression, i.e. a short string describing its purpose.
	// This can be used e.g. in UIs which allow to enter the expression.
	Title *string `pulumi:"title"`
}

type OrganizationFeedConditionArgs

type OrganizationFeedConditionArgs struct {
	// Description of the expression. This is a longer text which describes the expression,
	// e.g. when hovered over it in a UI.
	Description pulumi.StringPtrInput `pulumi:"description"`
	// Textual representation of an expression in Common Expression Language syntax.
	Expression pulumi.StringInput `pulumi:"expression"`
	// String indicating the location of the expression for error reporting, e.g. a file
	// name and a position in the file.
	Location pulumi.StringPtrInput `pulumi:"location"`
	// Title for the expression, i.e. a short string describing its purpose.
	// This can be used e.g. in UIs which allow to enter the expression.
	Title pulumi.StringPtrInput `pulumi:"title"`
}

func (OrganizationFeedConditionArgs) ElementType

func (OrganizationFeedConditionArgs) ToOrganizationFeedConditionOutput

func (i OrganizationFeedConditionArgs) ToOrganizationFeedConditionOutput() OrganizationFeedConditionOutput

func (OrganizationFeedConditionArgs) ToOrganizationFeedConditionOutputWithContext

func (i OrganizationFeedConditionArgs) ToOrganizationFeedConditionOutputWithContext(ctx context.Context) OrganizationFeedConditionOutput

func (OrganizationFeedConditionArgs) ToOrganizationFeedConditionPtrOutput

func (i OrganizationFeedConditionArgs) ToOrganizationFeedConditionPtrOutput() OrganizationFeedConditionPtrOutput

func (OrganizationFeedConditionArgs) ToOrganizationFeedConditionPtrOutputWithContext

func (i OrganizationFeedConditionArgs) ToOrganizationFeedConditionPtrOutputWithContext(ctx context.Context) OrganizationFeedConditionPtrOutput

type OrganizationFeedConditionInput

type OrganizationFeedConditionInput interface {
	pulumi.Input

	ToOrganizationFeedConditionOutput() OrganizationFeedConditionOutput
	ToOrganizationFeedConditionOutputWithContext(context.Context) OrganizationFeedConditionOutput
}

OrganizationFeedConditionInput is an input type that accepts OrganizationFeedConditionArgs and OrganizationFeedConditionOutput values. You can construct a concrete instance of `OrganizationFeedConditionInput` via:

OrganizationFeedConditionArgs{...}

type OrganizationFeedConditionOutput

type OrganizationFeedConditionOutput struct{ *pulumi.OutputState }

func (OrganizationFeedConditionOutput) Description

Description of the expression. This is a longer text which describes the expression, e.g. when hovered over it in a UI.

func (OrganizationFeedConditionOutput) ElementType

func (OrganizationFeedConditionOutput) Expression

Textual representation of an expression in Common Expression Language syntax.

func (OrganizationFeedConditionOutput) Location

String indicating the location of the expression for error reporting, e.g. a file name and a position in the file.

func (OrganizationFeedConditionOutput) Title

Title for the expression, i.e. a short string describing its purpose. This can be used e.g. in UIs which allow to enter the expression.

func (OrganizationFeedConditionOutput) ToOrganizationFeedConditionOutput

func (o OrganizationFeedConditionOutput) ToOrganizationFeedConditionOutput() OrganizationFeedConditionOutput

func (OrganizationFeedConditionOutput) ToOrganizationFeedConditionOutputWithContext

func (o OrganizationFeedConditionOutput) ToOrganizationFeedConditionOutputWithContext(ctx context.Context) OrganizationFeedConditionOutput

func (OrganizationFeedConditionOutput) ToOrganizationFeedConditionPtrOutput

func (o OrganizationFeedConditionOutput) ToOrganizationFeedConditionPtrOutput() OrganizationFeedConditionPtrOutput

func (OrganizationFeedConditionOutput) ToOrganizationFeedConditionPtrOutputWithContext

func (o OrganizationFeedConditionOutput) ToOrganizationFeedConditionPtrOutputWithContext(ctx context.Context) OrganizationFeedConditionPtrOutput

type OrganizationFeedConditionPtrInput

type OrganizationFeedConditionPtrInput interface {
	pulumi.Input

	ToOrganizationFeedConditionPtrOutput() OrganizationFeedConditionPtrOutput
	ToOrganizationFeedConditionPtrOutputWithContext(context.Context) OrganizationFeedConditionPtrOutput
}

OrganizationFeedConditionPtrInput is an input type that accepts OrganizationFeedConditionArgs, OrganizationFeedConditionPtr and OrganizationFeedConditionPtrOutput values. You can construct a concrete instance of `OrganizationFeedConditionPtrInput` via:

        OrganizationFeedConditionArgs{...}

or:

        nil

type OrganizationFeedConditionPtrOutput

type OrganizationFeedConditionPtrOutput struct{ *pulumi.OutputState }

func (OrganizationFeedConditionPtrOutput) Description

Description of the expression. This is a longer text which describes the expression, e.g. when hovered over it in a UI.

func (OrganizationFeedConditionPtrOutput) Elem

func (OrganizationFeedConditionPtrOutput) ElementType

func (OrganizationFeedConditionPtrOutput) Expression

Textual representation of an expression in Common Expression Language syntax.

func (OrganizationFeedConditionPtrOutput) Location

String indicating the location of the expression for error reporting, e.g. a file name and a position in the file.

func (OrganizationFeedConditionPtrOutput) Title

Title for the expression, i.e. a short string describing its purpose. This can be used e.g. in UIs which allow to enter the expression.

func (OrganizationFeedConditionPtrOutput) ToOrganizationFeedConditionPtrOutput

func (o OrganizationFeedConditionPtrOutput) ToOrganizationFeedConditionPtrOutput() OrganizationFeedConditionPtrOutput

func (OrganizationFeedConditionPtrOutput) ToOrganizationFeedConditionPtrOutputWithContext

func (o OrganizationFeedConditionPtrOutput) ToOrganizationFeedConditionPtrOutputWithContext(ctx context.Context) OrganizationFeedConditionPtrOutput

type OrganizationFeedFeedOutputConfig

type OrganizationFeedFeedOutputConfig struct {
	// Destination on Cloud Pubsub.
	// Structure is documented below.
	PubsubDestination OrganizationFeedFeedOutputConfigPubsubDestination `pulumi:"pubsubDestination"`
}

type OrganizationFeedFeedOutputConfigArgs

type OrganizationFeedFeedOutputConfigArgs struct {
	// Destination on Cloud Pubsub.
	// Structure is documented below.
	PubsubDestination OrganizationFeedFeedOutputConfigPubsubDestinationInput `pulumi:"pubsubDestination"`
}

func (OrganizationFeedFeedOutputConfigArgs) ElementType

func (OrganizationFeedFeedOutputConfigArgs) ToOrganizationFeedFeedOutputConfigOutput

func (i OrganizationFeedFeedOutputConfigArgs) ToOrganizationFeedFeedOutputConfigOutput() OrganizationFeedFeedOutputConfigOutput

func (OrganizationFeedFeedOutputConfigArgs) ToOrganizationFeedFeedOutputConfigOutputWithContext

func (i OrganizationFeedFeedOutputConfigArgs) ToOrganizationFeedFeedOutputConfigOutputWithContext(ctx context.Context) OrganizationFeedFeedOutputConfigOutput

func (OrganizationFeedFeedOutputConfigArgs) ToOrganizationFeedFeedOutputConfigPtrOutput

func (i OrganizationFeedFeedOutputConfigArgs) ToOrganizationFeedFeedOutputConfigPtrOutput() OrganizationFeedFeedOutputConfigPtrOutput

func (OrganizationFeedFeedOutputConfigArgs) ToOrganizationFeedFeedOutputConfigPtrOutputWithContext

func (i OrganizationFeedFeedOutputConfigArgs) ToOrganizationFeedFeedOutputConfigPtrOutputWithContext(ctx context.Context) OrganizationFeedFeedOutputConfigPtrOutput

type OrganizationFeedFeedOutputConfigInput

type OrganizationFeedFeedOutputConfigInput interface {
	pulumi.Input

	ToOrganizationFeedFeedOutputConfigOutput() OrganizationFeedFeedOutputConfigOutput
	ToOrganizationFeedFeedOutputConfigOutputWithContext(context.Context) OrganizationFeedFeedOutputConfigOutput
}

OrganizationFeedFeedOutputConfigInput is an input type that accepts OrganizationFeedFeedOutputConfigArgs and OrganizationFeedFeedOutputConfigOutput values. You can construct a concrete instance of `OrganizationFeedFeedOutputConfigInput` via:

OrganizationFeedFeedOutputConfigArgs{...}

type OrganizationFeedFeedOutputConfigOutput

type OrganizationFeedFeedOutputConfigOutput struct{ *pulumi.OutputState }

func (OrganizationFeedFeedOutputConfigOutput) ElementType

func (OrganizationFeedFeedOutputConfigOutput) PubsubDestination

Destination on Cloud Pubsub. Structure is documented below.

func (OrganizationFeedFeedOutputConfigOutput) ToOrganizationFeedFeedOutputConfigOutput

func (o OrganizationFeedFeedOutputConfigOutput) ToOrganizationFeedFeedOutputConfigOutput() OrganizationFeedFeedOutputConfigOutput

func (OrganizationFeedFeedOutputConfigOutput) ToOrganizationFeedFeedOutputConfigOutputWithContext

func (o OrganizationFeedFeedOutputConfigOutput) ToOrganizationFeedFeedOutputConfigOutputWithContext(ctx context.Context) OrganizationFeedFeedOutputConfigOutput

func (OrganizationFeedFeedOutputConfigOutput) ToOrganizationFeedFeedOutputConfigPtrOutput

func (o OrganizationFeedFeedOutputConfigOutput) ToOrganizationFeedFeedOutputConfigPtrOutput() OrganizationFeedFeedOutputConfigPtrOutput

func (OrganizationFeedFeedOutputConfigOutput) ToOrganizationFeedFeedOutputConfigPtrOutputWithContext

func (o OrganizationFeedFeedOutputConfigOutput) ToOrganizationFeedFeedOutputConfigPtrOutputWithContext(ctx context.Context) OrganizationFeedFeedOutputConfigPtrOutput

type OrganizationFeedFeedOutputConfigPtrInput

type OrganizationFeedFeedOutputConfigPtrInput interface {
	pulumi.Input

	ToOrganizationFeedFeedOutputConfigPtrOutput() OrganizationFeedFeedOutputConfigPtrOutput
	ToOrganizationFeedFeedOutputConfigPtrOutputWithContext(context.Context) OrganizationFeedFeedOutputConfigPtrOutput
}

OrganizationFeedFeedOutputConfigPtrInput is an input type that accepts OrganizationFeedFeedOutputConfigArgs, OrganizationFeedFeedOutputConfigPtr and OrganizationFeedFeedOutputConfigPtrOutput values. You can construct a concrete instance of `OrganizationFeedFeedOutputConfigPtrInput` via:

        OrganizationFeedFeedOutputConfigArgs{...}

or:

        nil

type OrganizationFeedFeedOutputConfigPtrOutput

type OrganizationFeedFeedOutputConfigPtrOutput struct{ *pulumi.OutputState }

func (OrganizationFeedFeedOutputConfigPtrOutput) Elem

func (OrganizationFeedFeedOutputConfigPtrOutput) ElementType

func (OrganizationFeedFeedOutputConfigPtrOutput) PubsubDestination

Destination on Cloud Pubsub. Structure is documented below.

func (OrganizationFeedFeedOutputConfigPtrOutput) ToOrganizationFeedFeedOutputConfigPtrOutput

func (o OrganizationFeedFeedOutputConfigPtrOutput) ToOrganizationFeedFeedOutputConfigPtrOutput() OrganizationFeedFeedOutputConfigPtrOutput

func (OrganizationFeedFeedOutputConfigPtrOutput) ToOrganizationFeedFeedOutputConfigPtrOutputWithContext

func (o OrganizationFeedFeedOutputConfigPtrOutput) ToOrganizationFeedFeedOutputConfigPtrOutputWithContext(ctx context.Context) OrganizationFeedFeedOutputConfigPtrOutput

type OrganizationFeedFeedOutputConfigPubsubDestination

type OrganizationFeedFeedOutputConfigPubsubDestination struct {
	// Destination on Cloud Pubsub topic.
	//
	// ***
	Topic string `pulumi:"topic"`
}

type OrganizationFeedFeedOutputConfigPubsubDestinationArgs

type OrganizationFeedFeedOutputConfigPubsubDestinationArgs struct {
	// Destination on Cloud Pubsub topic.
	//
	// ***
	Topic pulumi.StringInput `pulumi:"topic"`
}

func (OrganizationFeedFeedOutputConfigPubsubDestinationArgs) ElementType

func (OrganizationFeedFeedOutputConfigPubsubDestinationArgs) ToOrganizationFeedFeedOutputConfigPubsubDestinationOutput

func (i OrganizationFeedFeedOutputConfigPubsubDestinationArgs) ToOrganizationFeedFeedOutputConfigPubsubDestinationOutput() OrganizationFeedFeedOutputConfigPubsubDestinationOutput

func (OrganizationFeedFeedOutputConfigPubsubDestinationArgs) ToOrganizationFeedFeedOutputConfigPubsubDestinationOutputWithContext

func (i OrganizationFeedFeedOutputConfigPubsubDestinationArgs) ToOrganizationFeedFeedOutputConfigPubsubDestinationOutputWithContext(ctx context.Context) OrganizationFeedFeedOutputConfigPubsubDestinationOutput

func (OrganizationFeedFeedOutputConfigPubsubDestinationArgs) ToOrganizationFeedFeedOutputConfigPubsubDestinationPtrOutput

func (i OrganizationFeedFeedOutputConfigPubsubDestinationArgs) ToOrganizationFeedFeedOutputConfigPubsubDestinationPtrOutput() OrganizationFeedFeedOutputConfigPubsubDestinationPtrOutput

func (OrganizationFeedFeedOutputConfigPubsubDestinationArgs) ToOrganizationFeedFeedOutputConfigPubsubDestinationPtrOutputWithContext

func (i OrganizationFeedFeedOutputConfigPubsubDestinationArgs) ToOrganizationFeedFeedOutputConfigPubsubDestinationPtrOutputWithContext(ctx context.Context) OrganizationFeedFeedOutputConfigPubsubDestinationPtrOutput

type OrganizationFeedFeedOutputConfigPubsubDestinationInput

type OrganizationFeedFeedOutputConfigPubsubDestinationInput interface {
	pulumi.Input

	ToOrganizationFeedFeedOutputConfigPubsubDestinationOutput() OrganizationFeedFeedOutputConfigPubsubDestinationOutput
	ToOrganizationFeedFeedOutputConfigPubsubDestinationOutputWithContext(context.Context) OrganizationFeedFeedOutputConfigPubsubDestinationOutput
}

OrganizationFeedFeedOutputConfigPubsubDestinationInput is an input type that accepts OrganizationFeedFeedOutputConfigPubsubDestinationArgs and OrganizationFeedFeedOutputConfigPubsubDestinationOutput values. You can construct a concrete instance of `OrganizationFeedFeedOutputConfigPubsubDestinationInput` via:

OrganizationFeedFeedOutputConfigPubsubDestinationArgs{...}

type OrganizationFeedFeedOutputConfigPubsubDestinationOutput

type OrganizationFeedFeedOutputConfigPubsubDestinationOutput struct{ *pulumi.OutputState }

func (OrganizationFeedFeedOutputConfigPubsubDestinationOutput) ElementType

func (OrganizationFeedFeedOutputConfigPubsubDestinationOutput) ToOrganizationFeedFeedOutputConfigPubsubDestinationOutput

func (OrganizationFeedFeedOutputConfigPubsubDestinationOutput) ToOrganizationFeedFeedOutputConfigPubsubDestinationOutputWithContext

func (o OrganizationFeedFeedOutputConfigPubsubDestinationOutput) ToOrganizationFeedFeedOutputConfigPubsubDestinationOutputWithContext(ctx context.Context) OrganizationFeedFeedOutputConfigPubsubDestinationOutput

func (OrganizationFeedFeedOutputConfigPubsubDestinationOutput) ToOrganizationFeedFeedOutputConfigPubsubDestinationPtrOutput

func (OrganizationFeedFeedOutputConfigPubsubDestinationOutput) ToOrganizationFeedFeedOutputConfigPubsubDestinationPtrOutputWithContext

func (o OrganizationFeedFeedOutputConfigPubsubDestinationOutput) ToOrganizationFeedFeedOutputConfigPubsubDestinationPtrOutputWithContext(ctx context.Context) OrganizationFeedFeedOutputConfigPubsubDestinationPtrOutput

func (OrganizationFeedFeedOutputConfigPubsubDestinationOutput) Topic

Destination on Cloud Pubsub topic.

***

type OrganizationFeedFeedOutputConfigPubsubDestinationPtrInput

type OrganizationFeedFeedOutputConfigPubsubDestinationPtrInput interface {
	pulumi.Input

	ToOrganizationFeedFeedOutputConfigPubsubDestinationPtrOutput() OrganizationFeedFeedOutputConfigPubsubDestinationPtrOutput
	ToOrganizationFeedFeedOutputConfigPubsubDestinationPtrOutputWithContext(context.Context) OrganizationFeedFeedOutputConfigPubsubDestinationPtrOutput
}

OrganizationFeedFeedOutputConfigPubsubDestinationPtrInput is an input type that accepts OrganizationFeedFeedOutputConfigPubsubDestinationArgs, OrganizationFeedFeedOutputConfigPubsubDestinationPtr and OrganizationFeedFeedOutputConfigPubsubDestinationPtrOutput values. You can construct a concrete instance of `OrganizationFeedFeedOutputConfigPubsubDestinationPtrInput` via:

        OrganizationFeedFeedOutputConfigPubsubDestinationArgs{...}

or:

        nil

type OrganizationFeedFeedOutputConfigPubsubDestinationPtrOutput

type OrganizationFeedFeedOutputConfigPubsubDestinationPtrOutput struct{ *pulumi.OutputState }

func (OrganizationFeedFeedOutputConfigPubsubDestinationPtrOutput) Elem

func (OrganizationFeedFeedOutputConfigPubsubDestinationPtrOutput) ElementType

func (OrganizationFeedFeedOutputConfigPubsubDestinationPtrOutput) ToOrganizationFeedFeedOutputConfigPubsubDestinationPtrOutput

func (OrganizationFeedFeedOutputConfigPubsubDestinationPtrOutput) ToOrganizationFeedFeedOutputConfigPubsubDestinationPtrOutputWithContext

func (o OrganizationFeedFeedOutputConfigPubsubDestinationPtrOutput) ToOrganizationFeedFeedOutputConfigPubsubDestinationPtrOutputWithContext(ctx context.Context) OrganizationFeedFeedOutputConfigPubsubDestinationPtrOutput

func (OrganizationFeedFeedOutputConfigPubsubDestinationPtrOutput) Topic

Destination on Cloud Pubsub topic.

***

type OrganizationFeedInput

type OrganizationFeedInput interface {
	pulumi.Input

	ToOrganizationFeedOutput() OrganizationFeedOutput
	ToOrganizationFeedOutputWithContext(ctx context.Context) OrganizationFeedOutput
}

type OrganizationFeedMap

type OrganizationFeedMap map[string]OrganizationFeedInput

func (OrganizationFeedMap) ElementType

func (OrganizationFeedMap) ElementType() reflect.Type

func (OrganizationFeedMap) ToOrganizationFeedMapOutput

func (i OrganizationFeedMap) ToOrganizationFeedMapOutput() OrganizationFeedMapOutput

func (OrganizationFeedMap) ToOrganizationFeedMapOutputWithContext

func (i OrganizationFeedMap) ToOrganizationFeedMapOutputWithContext(ctx context.Context) OrganizationFeedMapOutput

type OrganizationFeedMapInput

type OrganizationFeedMapInput interface {
	pulumi.Input

	ToOrganizationFeedMapOutput() OrganizationFeedMapOutput
	ToOrganizationFeedMapOutputWithContext(context.Context) OrganizationFeedMapOutput
}

OrganizationFeedMapInput is an input type that accepts OrganizationFeedMap and OrganizationFeedMapOutput values. You can construct a concrete instance of `OrganizationFeedMapInput` via:

OrganizationFeedMap{ "key": OrganizationFeedArgs{...} }

type OrganizationFeedMapOutput

type OrganizationFeedMapOutput struct{ *pulumi.OutputState }

func (OrganizationFeedMapOutput) ElementType

func (OrganizationFeedMapOutput) ElementType() reflect.Type

func (OrganizationFeedMapOutput) MapIndex

func (OrganizationFeedMapOutput) ToOrganizationFeedMapOutput

func (o OrganizationFeedMapOutput) ToOrganizationFeedMapOutput() OrganizationFeedMapOutput

func (OrganizationFeedMapOutput) ToOrganizationFeedMapOutputWithContext

func (o OrganizationFeedMapOutput) ToOrganizationFeedMapOutputWithContext(ctx context.Context) OrganizationFeedMapOutput

type OrganizationFeedOutput

type OrganizationFeedOutput struct{ *pulumi.OutputState }

func (OrganizationFeedOutput) AssetNames

A list of the full names of the assets to receive updates. You must specify either or both of assetNames and assetTypes. Only asset updates matching specified assetNames and assetTypes are exported to the feed. For example: //compute.googleapis.com/projects/my_project_123/zones/zone1/instances/instance1. See https://cloud.google.com/apis/design/resourceNames#fullResourceName for more info.

func (OrganizationFeedOutput) AssetTypes

A list of types of the assets to receive updates. You must specify either or both of assetNames and assetTypes. Only asset updates matching specified assetNames and assetTypes are exported to the feed. For example: "compute.googleapis.com/Disk" See https://cloud.google.com/asset-inventory/docs/supported-asset-types for a list of all supported asset types.

func (OrganizationFeedOutput) BillingProject

func (o OrganizationFeedOutput) BillingProject() pulumi.StringOutput

The project whose identity will be used when sending messages to the destination pubsub topic. It also specifies the project for API enablement check, quota, and billing.

func (OrganizationFeedOutput) Condition

A condition which determines whether an asset update should be published. If specified, an asset will be returned only when the expression evaluates to true. When set, expression field must be a valid CEL expression on a TemporalAsset with name temporal_asset. Example: a Feed with expression "temporal_asset.deleted == true" will only publish Asset deletions. Other fields of condition are optional.

func (OrganizationFeedOutput) ContentType

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", "OS_INVENTORY", "ACCESS_POLICY"]

func (OrganizationFeedOutput) ElementType

func (OrganizationFeedOutput) ElementType() reflect.Type

func (OrganizationFeedOutput) FeedId

This is the client-assigned asset feed identifier and it needs to be unique under a specific parent.

func (OrganizationFeedOutput) FeedOutputConfig

Output configuration for asset feed destination. Structure is documented below.

func (OrganizationFeedOutput) Name

The format will be organizations/{organization_number}/feeds/{client-assigned_feed_identifier}.

func (OrganizationFeedOutput) OrgId

The organization this feed should be created in.

func (OrganizationFeedOutput) ToOrganizationFeedOutput

func (o OrganizationFeedOutput) ToOrganizationFeedOutput() OrganizationFeedOutput

func (OrganizationFeedOutput) ToOrganizationFeedOutputWithContext

func (o OrganizationFeedOutput) ToOrganizationFeedOutputWithContext(ctx context.Context) OrganizationFeedOutput

type OrganizationFeedState

type OrganizationFeedState struct {
	// A list of the full names of the assets to receive updates. You must specify either or both of assetNames and assetTypes.
	// Only asset updates matching specified assetNames and assetTypes are exported to the feed. For example:
	// //compute.googleapis.com/projects/my_project_123/zones/zone1/instances/instance1. See
	// https://cloud.google.com/apis/design/resourceNames#fullResourceName for more info.
	AssetNames pulumi.StringArrayInput
	// A list of types of the assets to receive updates. You must specify either or both of assetNames and assetTypes. Only
	// asset updates matching specified assetNames and assetTypes are exported to the feed. For example:
	// "compute.googleapis.com/Disk" See https://cloud.google.com/asset-inventory/docs/supported-asset-types for a list of all
	// supported asset types.
	AssetTypes pulumi.StringArrayInput
	// The project whose identity will be used when sending messages to the
	// destination pubsub topic. It also specifies the project for API
	// enablement check, quota, and billing.
	BillingProject pulumi.StringPtrInput
	// A condition which determines whether an asset update should be published. If specified, an asset will be returned only
	// when the expression evaluates to true. When set, expression field must be a valid CEL expression on a TemporalAsset with
	// name temporal_asset. Example: a Feed with expression "temporal_asset.deleted == true" will only publish Asset deletions.
	// Other fields of condition are optional.
	Condition OrganizationFeedConditionPtrInput
	// 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", "OS_INVENTORY", "ACCESS_POLICY"]
	ContentType pulumi.StringPtrInput
	// This is the client-assigned asset feed identifier and it needs to be unique under a specific parent.
	FeedId pulumi.StringPtrInput
	// Output configuration for asset feed destination.
	// Structure is documented below.
	FeedOutputConfig OrganizationFeedFeedOutputConfigPtrInput
	// The format will be organizations/{organization_number}/feeds/{client-assigned_feed_identifier}.
	Name pulumi.StringPtrInput
	// The organization this feed should be created in.
	OrgId pulumi.StringPtrInput
}

func (OrganizationFeedState) ElementType

func (OrganizationFeedState) ElementType() reflect.Type

type ProjectFeed

type ProjectFeed struct {
	pulumi.CustomResourceState

	// A list of the full names of the assets to receive updates. You must specify either or both of assetNames and assetTypes.
	// Only asset updates matching specified assetNames and assetTypes are exported to the feed. For example:
	// //compute.googleapis.com/projects/my_project_123/zones/zone1/instances/instance1. See
	// https://cloud.google.com/apis/design/resourceNames#fullResourceName for more info.
	AssetNames pulumi.StringArrayOutput `pulumi:"assetNames"`
	// A list of types of the assets to receive updates. You must specify either or both of assetNames and assetTypes. Only
	// asset updates matching specified assetNames and assetTypes are exported to the feed. For example:
	// "compute.googleapis.com/Disk" See https://cloud.google.com/asset-inventory/docs/supported-asset-types for a list of all
	// supported asset types.
	AssetTypes pulumi.StringArrayOutput `pulumi:"assetTypes"`
	// The project whose identity will be used when sending messages to the destination pubsub topic. It also specifies the
	// project for API enablement check, quota, and billing. If not specified, the resource's project will be used.
	BillingProject pulumi.StringPtrOutput `pulumi:"billingProject"`
	// A condition which determines whether an asset update should be published. If specified, an asset will be returned only
	// when the expression evaluates to true. When set, expression field must be a valid CEL expression on a TemporalAsset with
	// name temporal_asset. Example: a Feed with expression "temporal_asset.deleted == true" will only publish Asset deletions.
	// Other fields of condition are optional.
	Condition ProjectFeedConditionPtrOutput `pulumi:"condition"`
	// 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", "OS_INVENTORY", "ACCESS_POLICY"]
	ContentType pulumi.StringPtrOutput `pulumi:"contentType"`
	// This is the client-assigned asset feed identifier and it needs to be unique under a specific parent.
	FeedId pulumi.StringOutput `pulumi:"feedId"`
	// Output configuration for asset feed destination.
	// Structure is documented below.
	FeedOutputConfig ProjectFeedFeedOutputConfigOutput `pulumi:"feedOutputConfig"`
	// The format will be projects/{projectNumber}/feeds/{client-assigned_feed_identifier}.
	Name    pulumi.StringOutput `pulumi:"name"`
	Project pulumi.StringOutput `pulumi:"project"`
}

Describes a Cloud Asset Inventory feed used to to listen to asset updates.

To get more information about ProjectFeed, see:

* [API documentation](https://cloud.google.com/asset-inventory/docs/reference/rest/) * How-to Guides

## Example Usage

### Cloud Asset Project Feed

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/cloudasset"
"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/organizations"
"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/pubsub"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		// The topic where the resource change notifications will be sent.
		feedOutput, err := pubsub.NewTopic(ctx, "feed_output", &pubsub.TopicArgs{
			Project: pulumi.String("my-project-name"),
			Name:    pulumi.String("network-updates"),
		})
		if err != nil {
			return err
		}
		// Create a feed that sends notifications about network resource updates.
		_, err = cloudasset.NewProjectFeed(ctx, "project_feed", &cloudasset.ProjectFeedArgs{
			Project:     pulumi.String("my-project-name"),
			FeedId:      pulumi.String("network-updates"),
			ContentType: pulumi.String("RESOURCE"),
			AssetTypes: pulumi.StringArray{
				pulumi.String("compute.googleapis.com/Subnetwork"),
				pulumi.String("compute.googleapis.com/Network"),
			},
			FeedOutputConfig: &cloudasset.ProjectFeedFeedOutputConfigArgs{
				PubsubDestination: &cloudasset.ProjectFeedFeedOutputConfigPubsubDestinationArgs{
					Topic: feedOutput.ID(),
				},
			},
			Condition: &cloudasset.ProjectFeedConditionArgs{
				Expression:  pulumi.String("!temporal_asset.deleted &&\ntemporal_asset.prior_asset_state == google.cloud.asset.v1.TemporalAsset.PriorAssetState.DOES_NOT_EXIST\n"),
				Title:       pulumi.String("created"),
				Description: pulumi.String("Send notifications on creation events"),
			},
		})
		if err != nil {
			return err
		}
		// Find the project number of the project whose identity will be used for sending
		// the asset change notifications.
		_, err = organizations.LookupProject(ctx, &organizations.LookupProjectArgs{
			ProjectId: pulumi.StringRef("my-project-name"),
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

ProjectFeed can be imported using any of these accepted formats:

* `projects/{{project}}/feeds/{{name}}`

* `{{project}}/{{name}}`

* `{{name}}`

When using the `pulumi import` command, ProjectFeed can be imported using one of the formats above. For example:

```sh $ pulumi import gcp:cloudasset/projectFeed:ProjectFeed default projects/{{project}}/feeds/{{name}} ```

```sh $ pulumi import gcp:cloudasset/projectFeed:ProjectFeed default {{project}}/{{name}} ```

```sh $ pulumi import gcp:cloudasset/projectFeed:ProjectFeed default {{name}} ```

func GetProjectFeed

func GetProjectFeed(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ProjectFeedState, opts ...pulumi.ResourceOption) (*ProjectFeed, error)

GetProjectFeed gets an existing ProjectFeed resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewProjectFeed

func NewProjectFeed(ctx *pulumi.Context,
	name string, args *ProjectFeedArgs, opts ...pulumi.ResourceOption) (*ProjectFeed, error)

NewProjectFeed registers a new resource with the given unique name, arguments, and options.

func (*ProjectFeed) ElementType

func (*ProjectFeed) ElementType() reflect.Type

func (*ProjectFeed) ToProjectFeedOutput

func (i *ProjectFeed) ToProjectFeedOutput() ProjectFeedOutput

func (*ProjectFeed) ToProjectFeedOutputWithContext

func (i *ProjectFeed) ToProjectFeedOutputWithContext(ctx context.Context) ProjectFeedOutput

type ProjectFeedArgs

type ProjectFeedArgs struct {
	// A list of the full names of the assets to receive updates. You must specify either or both of assetNames and assetTypes.
	// Only asset updates matching specified assetNames and assetTypes are exported to the feed. For example:
	// //compute.googleapis.com/projects/my_project_123/zones/zone1/instances/instance1. See
	// https://cloud.google.com/apis/design/resourceNames#fullResourceName for more info.
	AssetNames pulumi.StringArrayInput
	// A list of types of the assets to receive updates. You must specify either or both of assetNames and assetTypes. Only
	// asset updates matching specified assetNames and assetTypes are exported to the feed. For example:
	// "compute.googleapis.com/Disk" See https://cloud.google.com/asset-inventory/docs/supported-asset-types for a list of all
	// supported asset types.
	AssetTypes pulumi.StringArrayInput
	// The project whose identity will be used when sending messages to the destination pubsub topic. It also specifies the
	// project for API enablement check, quota, and billing. If not specified, the resource's project will be used.
	BillingProject pulumi.StringPtrInput
	// A condition which determines whether an asset update should be published. If specified, an asset will be returned only
	// when the expression evaluates to true. When set, expression field must be a valid CEL expression on a TemporalAsset with
	// name temporal_asset. Example: a Feed with expression "temporal_asset.deleted == true" will only publish Asset deletions.
	// Other fields of condition are optional.
	Condition ProjectFeedConditionPtrInput
	// 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", "OS_INVENTORY", "ACCESS_POLICY"]
	ContentType pulumi.StringPtrInput
	// This is the client-assigned asset feed identifier and it needs to be unique under a specific parent.
	FeedId pulumi.StringInput
	// Output configuration for asset feed destination.
	// Structure is documented below.
	FeedOutputConfig ProjectFeedFeedOutputConfigInput
	Project          pulumi.StringPtrInput
}

The set of arguments for constructing a ProjectFeed resource.

func (ProjectFeedArgs) ElementType

func (ProjectFeedArgs) ElementType() reflect.Type

type ProjectFeedArray

type ProjectFeedArray []ProjectFeedInput

func (ProjectFeedArray) ElementType

func (ProjectFeedArray) ElementType() reflect.Type

func (ProjectFeedArray) ToProjectFeedArrayOutput

func (i ProjectFeedArray) ToProjectFeedArrayOutput() ProjectFeedArrayOutput

func (ProjectFeedArray) ToProjectFeedArrayOutputWithContext

func (i ProjectFeedArray) ToProjectFeedArrayOutputWithContext(ctx context.Context) ProjectFeedArrayOutput

type ProjectFeedArrayInput

type ProjectFeedArrayInput interface {
	pulumi.Input

	ToProjectFeedArrayOutput() ProjectFeedArrayOutput
	ToProjectFeedArrayOutputWithContext(context.Context) ProjectFeedArrayOutput
}

ProjectFeedArrayInput is an input type that accepts ProjectFeedArray and ProjectFeedArrayOutput values. You can construct a concrete instance of `ProjectFeedArrayInput` via:

ProjectFeedArray{ ProjectFeedArgs{...} }

type ProjectFeedArrayOutput

type ProjectFeedArrayOutput struct{ *pulumi.OutputState }

func (ProjectFeedArrayOutput) ElementType

func (ProjectFeedArrayOutput) ElementType() reflect.Type

func (ProjectFeedArrayOutput) Index

func (ProjectFeedArrayOutput) ToProjectFeedArrayOutput

func (o ProjectFeedArrayOutput) ToProjectFeedArrayOutput() ProjectFeedArrayOutput

func (ProjectFeedArrayOutput) ToProjectFeedArrayOutputWithContext

func (o ProjectFeedArrayOutput) ToProjectFeedArrayOutputWithContext(ctx context.Context) ProjectFeedArrayOutput

type ProjectFeedCondition

type ProjectFeedCondition struct {
	// Description of the expression. This is a longer text which describes the expression,
	// e.g. when hovered over it in a UI.
	Description *string `pulumi:"description"`
	// Textual representation of an expression in Common Expression Language syntax.
	Expression string `pulumi:"expression"`
	// String indicating the location of the expression for error reporting, e.g. a file
	// name and a position in the file.
	Location *string `pulumi:"location"`
	// Title for the expression, i.e. a short string describing its purpose.
	// This can be used e.g. in UIs which allow to enter the expression.
	Title *string `pulumi:"title"`
}

type ProjectFeedConditionArgs

type ProjectFeedConditionArgs struct {
	// Description of the expression. This is a longer text which describes the expression,
	// e.g. when hovered over it in a UI.
	Description pulumi.StringPtrInput `pulumi:"description"`
	// Textual representation of an expression in Common Expression Language syntax.
	Expression pulumi.StringInput `pulumi:"expression"`
	// String indicating the location of the expression for error reporting, e.g. a file
	// name and a position in the file.
	Location pulumi.StringPtrInput `pulumi:"location"`
	// Title for the expression, i.e. a short string describing its purpose.
	// This can be used e.g. in UIs which allow to enter the expression.
	Title pulumi.StringPtrInput `pulumi:"title"`
}

func (ProjectFeedConditionArgs) ElementType

func (ProjectFeedConditionArgs) ElementType() reflect.Type

func (ProjectFeedConditionArgs) ToProjectFeedConditionOutput

func (i ProjectFeedConditionArgs) ToProjectFeedConditionOutput() ProjectFeedConditionOutput

func (ProjectFeedConditionArgs) ToProjectFeedConditionOutputWithContext

func (i ProjectFeedConditionArgs) ToProjectFeedConditionOutputWithContext(ctx context.Context) ProjectFeedConditionOutput

func (ProjectFeedConditionArgs) ToProjectFeedConditionPtrOutput

func (i ProjectFeedConditionArgs) ToProjectFeedConditionPtrOutput() ProjectFeedConditionPtrOutput

func (ProjectFeedConditionArgs) ToProjectFeedConditionPtrOutputWithContext

func (i ProjectFeedConditionArgs) ToProjectFeedConditionPtrOutputWithContext(ctx context.Context) ProjectFeedConditionPtrOutput

type ProjectFeedConditionInput

type ProjectFeedConditionInput interface {
	pulumi.Input

	ToProjectFeedConditionOutput() ProjectFeedConditionOutput
	ToProjectFeedConditionOutputWithContext(context.Context) ProjectFeedConditionOutput
}

ProjectFeedConditionInput is an input type that accepts ProjectFeedConditionArgs and ProjectFeedConditionOutput values. You can construct a concrete instance of `ProjectFeedConditionInput` via:

ProjectFeedConditionArgs{...}

type ProjectFeedConditionOutput

type ProjectFeedConditionOutput struct{ *pulumi.OutputState }

func (ProjectFeedConditionOutput) Description

Description of the expression. This is a longer text which describes the expression, e.g. when hovered over it in a UI.

func (ProjectFeedConditionOutput) ElementType

func (ProjectFeedConditionOutput) ElementType() reflect.Type

func (ProjectFeedConditionOutput) Expression

Textual representation of an expression in Common Expression Language syntax.

func (ProjectFeedConditionOutput) Location

String indicating the location of the expression for error reporting, e.g. a file name and a position in the file.

func (ProjectFeedConditionOutput) Title

Title for the expression, i.e. a short string describing its purpose. This can be used e.g. in UIs which allow to enter the expression.

func (ProjectFeedConditionOutput) ToProjectFeedConditionOutput

func (o ProjectFeedConditionOutput) ToProjectFeedConditionOutput() ProjectFeedConditionOutput

func (ProjectFeedConditionOutput) ToProjectFeedConditionOutputWithContext

func (o ProjectFeedConditionOutput) ToProjectFeedConditionOutputWithContext(ctx context.Context) ProjectFeedConditionOutput

func (ProjectFeedConditionOutput) ToProjectFeedConditionPtrOutput

func (o ProjectFeedConditionOutput) ToProjectFeedConditionPtrOutput() ProjectFeedConditionPtrOutput

func (ProjectFeedConditionOutput) ToProjectFeedConditionPtrOutputWithContext

func (o ProjectFeedConditionOutput) ToProjectFeedConditionPtrOutputWithContext(ctx context.Context) ProjectFeedConditionPtrOutput

type ProjectFeedConditionPtrInput

type ProjectFeedConditionPtrInput interface {
	pulumi.Input

	ToProjectFeedConditionPtrOutput() ProjectFeedConditionPtrOutput
	ToProjectFeedConditionPtrOutputWithContext(context.Context) ProjectFeedConditionPtrOutput
}

ProjectFeedConditionPtrInput is an input type that accepts ProjectFeedConditionArgs, ProjectFeedConditionPtr and ProjectFeedConditionPtrOutput values. You can construct a concrete instance of `ProjectFeedConditionPtrInput` via:

        ProjectFeedConditionArgs{...}

or:

        nil

type ProjectFeedConditionPtrOutput

type ProjectFeedConditionPtrOutput struct{ *pulumi.OutputState }

func (ProjectFeedConditionPtrOutput) Description

Description of the expression. This is a longer text which describes the expression, e.g. when hovered over it in a UI.

func (ProjectFeedConditionPtrOutput) Elem

func (ProjectFeedConditionPtrOutput) ElementType

func (ProjectFeedConditionPtrOutput) Expression

Textual representation of an expression in Common Expression Language syntax.

func (ProjectFeedConditionPtrOutput) Location

String indicating the location of the expression for error reporting, e.g. a file name and a position in the file.

func (ProjectFeedConditionPtrOutput) Title

Title for the expression, i.e. a short string describing its purpose. This can be used e.g. in UIs which allow to enter the expression.

func (ProjectFeedConditionPtrOutput) ToProjectFeedConditionPtrOutput

func (o ProjectFeedConditionPtrOutput) ToProjectFeedConditionPtrOutput() ProjectFeedConditionPtrOutput

func (ProjectFeedConditionPtrOutput) ToProjectFeedConditionPtrOutputWithContext

func (o ProjectFeedConditionPtrOutput) ToProjectFeedConditionPtrOutputWithContext(ctx context.Context) ProjectFeedConditionPtrOutput

type ProjectFeedFeedOutputConfig

type ProjectFeedFeedOutputConfig struct {
	// Destination on Cloud Pubsub.
	// Structure is documented below.
	PubsubDestination ProjectFeedFeedOutputConfigPubsubDestination `pulumi:"pubsubDestination"`
}

type ProjectFeedFeedOutputConfigArgs

type ProjectFeedFeedOutputConfigArgs struct {
	// Destination on Cloud Pubsub.
	// Structure is documented below.
	PubsubDestination ProjectFeedFeedOutputConfigPubsubDestinationInput `pulumi:"pubsubDestination"`
}

func (ProjectFeedFeedOutputConfigArgs) ElementType

func (ProjectFeedFeedOutputConfigArgs) ToProjectFeedFeedOutputConfigOutput

func (i ProjectFeedFeedOutputConfigArgs) ToProjectFeedFeedOutputConfigOutput() ProjectFeedFeedOutputConfigOutput

func (ProjectFeedFeedOutputConfigArgs) ToProjectFeedFeedOutputConfigOutputWithContext

func (i ProjectFeedFeedOutputConfigArgs) ToProjectFeedFeedOutputConfigOutputWithContext(ctx context.Context) ProjectFeedFeedOutputConfigOutput

func (ProjectFeedFeedOutputConfigArgs) ToProjectFeedFeedOutputConfigPtrOutput

func (i ProjectFeedFeedOutputConfigArgs) ToProjectFeedFeedOutputConfigPtrOutput() ProjectFeedFeedOutputConfigPtrOutput

func (ProjectFeedFeedOutputConfigArgs) ToProjectFeedFeedOutputConfigPtrOutputWithContext

func (i ProjectFeedFeedOutputConfigArgs) ToProjectFeedFeedOutputConfigPtrOutputWithContext(ctx context.Context) ProjectFeedFeedOutputConfigPtrOutput

type ProjectFeedFeedOutputConfigInput

type ProjectFeedFeedOutputConfigInput interface {
	pulumi.Input

	ToProjectFeedFeedOutputConfigOutput() ProjectFeedFeedOutputConfigOutput
	ToProjectFeedFeedOutputConfigOutputWithContext(context.Context) ProjectFeedFeedOutputConfigOutput
}

ProjectFeedFeedOutputConfigInput is an input type that accepts ProjectFeedFeedOutputConfigArgs and ProjectFeedFeedOutputConfigOutput values. You can construct a concrete instance of `ProjectFeedFeedOutputConfigInput` via:

ProjectFeedFeedOutputConfigArgs{...}

type ProjectFeedFeedOutputConfigOutput

type ProjectFeedFeedOutputConfigOutput struct{ *pulumi.OutputState }

func (ProjectFeedFeedOutputConfigOutput) ElementType

func (ProjectFeedFeedOutputConfigOutput) PubsubDestination

Destination on Cloud Pubsub. Structure is documented below.

func (ProjectFeedFeedOutputConfigOutput) ToProjectFeedFeedOutputConfigOutput

func (o ProjectFeedFeedOutputConfigOutput) ToProjectFeedFeedOutputConfigOutput() ProjectFeedFeedOutputConfigOutput

func (ProjectFeedFeedOutputConfigOutput) ToProjectFeedFeedOutputConfigOutputWithContext

func (o ProjectFeedFeedOutputConfigOutput) ToProjectFeedFeedOutputConfigOutputWithContext(ctx context.Context) ProjectFeedFeedOutputConfigOutput

func (ProjectFeedFeedOutputConfigOutput) ToProjectFeedFeedOutputConfigPtrOutput

func (o ProjectFeedFeedOutputConfigOutput) ToProjectFeedFeedOutputConfigPtrOutput() ProjectFeedFeedOutputConfigPtrOutput

func (ProjectFeedFeedOutputConfigOutput) ToProjectFeedFeedOutputConfigPtrOutputWithContext

func (o ProjectFeedFeedOutputConfigOutput) ToProjectFeedFeedOutputConfigPtrOutputWithContext(ctx context.Context) ProjectFeedFeedOutputConfigPtrOutput

type ProjectFeedFeedOutputConfigPtrInput

type ProjectFeedFeedOutputConfigPtrInput interface {
	pulumi.Input

	ToProjectFeedFeedOutputConfigPtrOutput() ProjectFeedFeedOutputConfigPtrOutput
	ToProjectFeedFeedOutputConfigPtrOutputWithContext(context.Context) ProjectFeedFeedOutputConfigPtrOutput
}

ProjectFeedFeedOutputConfigPtrInput is an input type that accepts ProjectFeedFeedOutputConfigArgs, ProjectFeedFeedOutputConfigPtr and ProjectFeedFeedOutputConfigPtrOutput values. You can construct a concrete instance of `ProjectFeedFeedOutputConfigPtrInput` via:

        ProjectFeedFeedOutputConfigArgs{...}

or:

        nil

type ProjectFeedFeedOutputConfigPtrOutput

type ProjectFeedFeedOutputConfigPtrOutput struct{ *pulumi.OutputState }

func (ProjectFeedFeedOutputConfigPtrOutput) Elem

func (ProjectFeedFeedOutputConfigPtrOutput) ElementType

func (ProjectFeedFeedOutputConfigPtrOutput) PubsubDestination

Destination on Cloud Pubsub. Structure is documented below.

func (ProjectFeedFeedOutputConfigPtrOutput) ToProjectFeedFeedOutputConfigPtrOutput

func (o ProjectFeedFeedOutputConfigPtrOutput) ToProjectFeedFeedOutputConfigPtrOutput() ProjectFeedFeedOutputConfigPtrOutput

func (ProjectFeedFeedOutputConfigPtrOutput) ToProjectFeedFeedOutputConfigPtrOutputWithContext

func (o ProjectFeedFeedOutputConfigPtrOutput) ToProjectFeedFeedOutputConfigPtrOutputWithContext(ctx context.Context) ProjectFeedFeedOutputConfigPtrOutput

type ProjectFeedFeedOutputConfigPubsubDestination

type ProjectFeedFeedOutputConfigPubsubDestination struct {
	// Destination on Cloud Pubsub topic.
	//
	// ***
	Topic string `pulumi:"topic"`
}

type ProjectFeedFeedOutputConfigPubsubDestinationArgs

type ProjectFeedFeedOutputConfigPubsubDestinationArgs struct {
	// Destination on Cloud Pubsub topic.
	//
	// ***
	Topic pulumi.StringInput `pulumi:"topic"`
}

func (ProjectFeedFeedOutputConfigPubsubDestinationArgs) ElementType

func (ProjectFeedFeedOutputConfigPubsubDestinationArgs) ToProjectFeedFeedOutputConfigPubsubDestinationOutput

func (i ProjectFeedFeedOutputConfigPubsubDestinationArgs) ToProjectFeedFeedOutputConfigPubsubDestinationOutput() ProjectFeedFeedOutputConfigPubsubDestinationOutput

func (ProjectFeedFeedOutputConfigPubsubDestinationArgs) ToProjectFeedFeedOutputConfigPubsubDestinationOutputWithContext

func (i ProjectFeedFeedOutputConfigPubsubDestinationArgs) ToProjectFeedFeedOutputConfigPubsubDestinationOutputWithContext(ctx context.Context) ProjectFeedFeedOutputConfigPubsubDestinationOutput

func (ProjectFeedFeedOutputConfigPubsubDestinationArgs) ToProjectFeedFeedOutputConfigPubsubDestinationPtrOutput

func (i ProjectFeedFeedOutputConfigPubsubDestinationArgs) ToProjectFeedFeedOutputConfigPubsubDestinationPtrOutput() ProjectFeedFeedOutputConfigPubsubDestinationPtrOutput

func (ProjectFeedFeedOutputConfigPubsubDestinationArgs) ToProjectFeedFeedOutputConfigPubsubDestinationPtrOutputWithContext

func (i ProjectFeedFeedOutputConfigPubsubDestinationArgs) ToProjectFeedFeedOutputConfigPubsubDestinationPtrOutputWithContext(ctx context.Context) ProjectFeedFeedOutputConfigPubsubDestinationPtrOutput

type ProjectFeedFeedOutputConfigPubsubDestinationInput

type ProjectFeedFeedOutputConfigPubsubDestinationInput interface {
	pulumi.Input

	ToProjectFeedFeedOutputConfigPubsubDestinationOutput() ProjectFeedFeedOutputConfigPubsubDestinationOutput
	ToProjectFeedFeedOutputConfigPubsubDestinationOutputWithContext(context.Context) ProjectFeedFeedOutputConfigPubsubDestinationOutput
}

ProjectFeedFeedOutputConfigPubsubDestinationInput is an input type that accepts ProjectFeedFeedOutputConfigPubsubDestinationArgs and ProjectFeedFeedOutputConfigPubsubDestinationOutput values. You can construct a concrete instance of `ProjectFeedFeedOutputConfigPubsubDestinationInput` via:

ProjectFeedFeedOutputConfigPubsubDestinationArgs{...}

type ProjectFeedFeedOutputConfigPubsubDestinationOutput

type ProjectFeedFeedOutputConfigPubsubDestinationOutput struct{ *pulumi.OutputState }

func (ProjectFeedFeedOutputConfigPubsubDestinationOutput) ElementType

func (ProjectFeedFeedOutputConfigPubsubDestinationOutput) ToProjectFeedFeedOutputConfigPubsubDestinationOutput

func (o ProjectFeedFeedOutputConfigPubsubDestinationOutput) ToProjectFeedFeedOutputConfigPubsubDestinationOutput() ProjectFeedFeedOutputConfigPubsubDestinationOutput

func (ProjectFeedFeedOutputConfigPubsubDestinationOutput) ToProjectFeedFeedOutputConfigPubsubDestinationOutputWithContext

func (o ProjectFeedFeedOutputConfigPubsubDestinationOutput) ToProjectFeedFeedOutputConfigPubsubDestinationOutputWithContext(ctx context.Context) ProjectFeedFeedOutputConfigPubsubDestinationOutput

func (ProjectFeedFeedOutputConfigPubsubDestinationOutput) ToProjectFeedFeedOutputConfigPubsubDestinationPtrOutput

func (o ProjectFeedFeedOutputConfigPubsubDestinationOutput) ToProjectFeedFeedOutputConfigPubsubDestinationPtrOutput() ProjectFeedFeedOutputConfigPubsubDestinationPtrOutput

func (ProjectFeedFeedOutputConfigPubsubDestinationOutput) ToProjectFeedFeedOutputConfigPubsubDestinationPtrOutputWithContext

func (o ProjectFeedFeedOutputConfigPubsubDestinationOutput) ToProjectFeedFeedOutputConfigPubsubDestinationPtrOutputWithContext(ctx context.Context) ProjectFeedFeedOutputConfigPubsubDestinationPtrOutput

func (ProjectFeedFeedOutputConfigPubsubDestinationOutput) Topic

Destination on Cloud Pubsub topic.

***

type ProjectFeedFeedOutputConfigPubsubDestinationPtrInput

type ProjectFeedFeedOutputConfigPubsubDestinationPtrInput interface {
	pulumi.Input

	ToProjectFeedFeedOutputConfigPubsubDestinationPtrOutput() ProjectFeedFeedOutputConfigPubsubDestinationPtrOutput
	ToProjectFeedFeedOutputConfigPubsubDestinationPtrOutputWithContext(context.Context) ProjectFeedFeedOutputConfigPubsubDestinationPtrOutput
}

ProjectFeedFeedOutputConfigPubsubDestinationPtrInput is an input type that accepts ProjectFeedFeedOutputConfigPubsubDestinationArgs, ProjectFeedFeedOutputConfigPubsubDestinationPtr and ProjectFeedFeedOutputConfigPubsubDestinationPtrOutput values. You can construct a concrete instance of `ProjectFeedFeedOutputConfigPubsubDestinationPtrInput` via:

        ProjectFeedFeedOutputConfigPubsubDestinationArgs{...}

or:

        nil

type ProjectFeedFeedOutputConfigPubsubDestinationPtrOutput

type ProjectFeedFeedOutputConfigPubsubDestinationPtrOutput struct{ *pulumi.OutputState }

func (ProjectFeedFeedOutputConfigPubsubDestinationPtrOutput) Elem

func (ProjectFeedFeedOutputConfigPubsubDestinationPtrOutput) ElementType

func (ProjectFeedFeedOutputConfigPubsubDestinationPtrOutput) ToProjectFeedFeedOutputConfigPubsubDestinationPtrOutput

func (ProjectFeedFeedOutputConfigPubsubDestinationPtrOutput) ToProjectFeedFeedOutputConfigPubsubDestinationPtrOutputWithContext

func (o ProjectFeedFeedOutputConfigPubsubDestinationPtrOutput) ToProjectFeedFeedOutputConfigPubsubDestinationPtrOutputWithContext(ctx context.Context) ProjectFeedFeedOutputConfigPubsubDestinationPtrOutput

func (ProjectFeedFeedOutputConfigPubsubDestinationPtrOutput) Topic

Destination on Cloud Pubsub topic.

***

type ProjectFeedInput

type ProjectFeedInput interface {
	pulumi.Input

	ToProjectFeedOutput() ProjectFeedOutput
	ToProjectFeedOutputWithContext(ctx context.Context) ProjectFeedOutput
}

type ProjectFeedMap

type ProjectFeedMap map[string]ProjectFeedInput

func (ProjectFeedMap) ElementType

func (ProjectFeedMap) ElementType() reflect.Type

func (ProjectFeedMap) ToProjectFeedMapOutput

func (i ProjectFeedMap) ToProjectFeedMapOutput() ProjectFeedMapOutput

func (ProjectFeedMap) ToProjectFeedMapOutputWithContext

func (i ProjectFeedMap) ToProjectFeedMapOutputWithContext(ctx context.Context) ProjectFeedMapOutput

type ProjectFeedMapInput

type ProjectFeedMapInput interface {
	pulumi.Input

	ToProjectFeedMapOutput() ProjectFeedMapOutput
	ToProjectFeedMapOutputWithContext(context.Context) ProjectFeedMapOutput
}

ProjectFeedMapInput is an input type that accepts ProjectFeedMap and ProjectFeedMapOutput values. You can construct a concrete instance of `ProjectFeedMapInput` via:

ProjectFeedMap{ "key": ProjectFeedArgs{...} }

type ProjectFeedMapOutput

type ProjectFeedMapOutput struct{ *pulumi.OutputState }

func (ProjectFeedMapOutput) ElementType

func (ProjectFeedMapOutput) ElementType() reflect.Type

func (ProjectFeedMapOutput) MapIndex

func (ProjectFeedMapOutput) ToProjectFeedMapOutput

func (o ProjectFeedMapOutput) ToProjectFeedMapOutput() ProjectFeedMapOutput

func (ProjectFeedMapOutput) ToProjectFeedMapOutputWithContext

func (o ProjectFeedMapOutput) ToProjectFeedMapOutputWithContext(ctx context.Context) ProjectFeedMapOutput

type ProjectFeedOutput

type ProjectFeedOutput struct{ *pulumi.OutputState }

func (ProjectFeedOutput) AssetNames

A list of the full names of the assets to receive updates. You must specify either or both of assetNames and assetTypes. Only asset updates matching specified assetNames and assetTypes are exported to the feed. For example: //compute.googleapis.com/projects/my_project_123/zones/zone1/instances/instance1. See https://cloud.google.com/apis/design/resourceNames#fullResourceName for more info.

func (ProjectFeedOutput) AssetTypes

A list of types of the assets to receive updates. You must specify either or both of assetNames and assetTypes. Only asset updates matching specified assetNames and assetTypes are exported to the feed. For example: "compute.googleapis.com/Disk" See https://cloud.google.com/asset-inventory/docs/supported-asset-types for a list of all supported asset types.

func (ProjectFeedOutput) BillingProject

func (o ProjectFeedOutput) BillingProject() pulumi.StringPtrOutput

The project whose identity will be used when sending messages to the destination pubsub topic. It also specifies the project for API enablement check, quota, and billing. If not specified, the resource's project will be used.

func (ProjectFeedOutput) Condition

A condition which determines whether an asset update should be published. If specified, an asset will be returned only when the expression evaluates to true. When set, expression field must be a valid CEL expression on a TemporalAsset with name temporal_asset. Example: a Feed with expression "temporal_asset.deleted == true" will only publish Asset deletions. Other fields of condition are optional.

func (ProjectFeedOutput) ContentType

func (o ProjectFeedOutput) ContentType() pulumi.StringPtrOutput

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", "OS_INVENTORY", "ACCESS_POLICY"]

func (ProjectFeedOutput) ElementType

func (ProjectFeedOutput) ElementType() reflect.Type

func (ProjectFeedOutput) FeedId

This is the client-assigned asset feed identifier and it needs to be unique under a specific parent.

func (ProjectFeedOutput) FeedOutputConfig

Output configuration for asset feed destination. Structure is documented below.

func (ProjectFeedOutput) Name

The format will be projects/{projectNumber}/feeds/{client-assigned_feed_identifier}.

func (ProjectFeedOutput) Project

func (ProjectFeedOutput) ToProjectFeedOutput

func (o ProjectFeedOutput) ToProjectFeedOutput() ProjectFeedOutput

func (ProjectFeedOutput) ToProjectFeedOutputWithContext

func (o ProjectFeedOutput) ToProjectFeedOutputWithContext(ctx context.Context) ProjectFeedOutput

type ProjectFeedState

type ProjectFeedState struct {
	// A list of the full names of the assets to receive updates. You must specify either or both of assetNames and assetTypes.
	// Only asset updates matching specified assetNames and assetTypes are exported to the feed. For example:
	// //compute.googleapis.com/projects/my_project_123/zones/zone1/instances/instance1. See
	// https://cloud.google.com/apis/design/resourceNames#fullResourceName for more info.
	AssetNames pulumi.StringArrayInput
	// A list of types of the assets to receive updates. You must specify either or both of assetNames and assetTypes. Only
	// asset updates matching specified assetNames and assetTypes are exported to the feed. For example:
	// "compute.googleapis.com/Disk" See https://cloud.google.com/asset-inventory/docs/supported-asset-types for a list of all
	// supported asset types.
	AssetTypes pulumi.StringArrayInput
	// The project whose identity will be used when sending messages to the destination pubsub topic. It also specifies the
	// project for API enablement check, quota, and billing. If not specified, the resource's project will be used.
	BillingProject pulumi.StringPtrInput
	// A condition which determines whether an asset update should be published. If specified, an asset will be returned only
	// when the expression evaluates to true. When set, expression field must be a valid CEL expression on a TemporalAsset with
	// name temporal_asset. Example: a Feed with expression "temporal_asset.deleted == true" will only publish Asset deletions.
	// Other fields of condition are optional.
	Condition ProjectFeedConditionPtrInput
	// 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", "OS_INVENTORY", "ACCESS_POLICY"]
	ContentType pulumi.StringPtrInput
	// This is the client-assigned asset feed identifier and it needs to be unique under a specific parent.
	FeedId pulumi.StringPtrInput
	// Output configuration for asset feed destination.
	// Structure is documented below.
	FeedOutputConfig ProjectFeedFeedOutputConfigPtrInput
	// The format will be projects/{projectNumber}/feeds/{client-assigned_feed_identifier}.
	Name    pulumi.StringPtrInput
	Project pulumi.StringPtrInput
}

func (ProjectFeedState) ElementType

func (ProjectFeedState) ElementType() reflect.Type

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL