import * as pulumi from "@pulumi/pulumi"; import * as inputs from "../types/input"; import * as outputs from "../types/output"; /** * The Organization Storage Intelligence Config resource represents GCS Storage Intelligence operating on individual GCP organization. Storage Intelligence Config is a singleton resource and individual instance exists on each GCP organization. * * Storage Intelligence is for Storage Admins to manage GCP storage assets at scale for performance, cost, security & compliance. * * > **Warning:** Storage Intelligence is a singleton resource which cannot be created or deleted. A single instance of Storage Intelligence exist for each GCP Organization. Terraform does not create or destroy this resource. * Terraform resource creation for this resource is simply an update operation on existing resource with specified properties, absence of any optional field in the create operation will result in clearance of that field. Terraform deletion won't have any effect on this resource rather it will only remove it from the state file. * * ## Example Usage * * ### Storage Control Organization Intelligence Config Basic * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as gcp from "@pulumi/gcp"; * * const example = new gcp.storage.ControlOrganizationIntelligenceConfig("example", { * name: "12345678", * editionConfig: "STANDARD", * filter: { * excludedCloudStorageBuckets: { * bucketIdRegexes: [ * "test-id-1*", * "test-id-2*", * ], * }, * includedCloudStorageLocations: { * locations: [ * "test-location-1*", * "test-locations-2*", * ], * }, * }, * }); * ``` * * ## Import * * OrganizationIntelligenceConfig can be imported using any of these accepted formats: * * * `organizations/{{name}}/locations/global/intelligenceConfig` * * `{{name}}` * * When using the `pulumi import` command, OrganizationIntelligenceConfig can be imported using one of the formats above. For example: * * ```sh * $ pulumi import gcp:storage/controlOrganizationIntelligenceConfig:ControlOrganizationIntelligenceConfig default organizations/{{name}}/locations/global/intelligenceConfig * $ pulumi import gcp:storage/controlOrganizationIntelligenceConfig:ControlOrganizationIntelligenceConfig default {{name}} * ``` */ export declare class ControlOrganizationIntelligenceConfig extends pulumi.CustomResource { /** * Get an existing ControlOrganizationIntelligenceConfig resource's state with the given name, ID, and optional extra * properties used to qualify the lookup. * * @param name The _unique_ name of the resulting resource. * @param id The _unique_ provider ID of the resource to lookup. * @param state Any extra arguments used during the lookup. * @param opts Optional settings to control the behavior of the CustomResource. */ static get(name: string, id: pulumi.Input, state?: ControlOrganizationIntelligenceConfigState, opts?: pulumi.CustomResourceOptions): ControlOrganizationIntelligenceConfig; /** * Returns true if the given object is an instance of ControlOrganizationIntelligenceConfig. This is designed to work even * when multiple copies of the Pulumi SDK have been loaded into the same process. */ static isInstance(obj: any): obj is ControlOrganizationIntelligenceConfig; /** * Edition configuration of the Storage Intelligence resource. Valid values are INHERIT, DISABLED, TRIAL and STANDARD. */ readonly editionConfig: pulumi.Output; /** * The Intelligence config that is effective for the resource. * Structure is documented below. */ readonly effectiveIntelligenceConfigs: pulumi.Output; /** * Filter over location and bucket using include or exclude semantics. Resources that match the include or exclude filter are exclusively included or excluded from the Storage Intelligence plan. * Structure is documented below. */ readonly filter: pulumi.Output; /** * Identifier of the GCP Organization. For GCP org, this field should be organization number. */ readonly name: pulumi.Output; /** * The trial configuration of the Storage Intelligence resource. * Structure is documented below. */ readonly trialConfigs: pulumi.Output; /** * The time at which the Storage Intelligence Config resource is last updated. */ readonly updateTime: pulumi.Output; /** * Create a ControlOrganizationIntelligenceConfig resource with the given unique name, arguments, and options. * * @param name The _unique_ name of the resource. * @param args The arguments to use to populate this resource's properties. * @param opts A bag of options that control this resource's behavior. */ constructor(name: string, args?: ControlOrganizationIntelligenceConfigArgs, opts?: pulumi.CustomResourceOptions); } /** * Input properties used for looking up and filtering ControlOrganizationIntelligenceConfig resources. */ export interface ControlOrganizationIntelligenceConfigState { /** * Edition configuration of the Storage Intelligence resource. Valid values are INHERIT, DISABLED, TRIAL and STANDARD. */ editionConfig?: pulumi.Input; /** * The Intelligence config that is effective for the resource. * Structure is documented below. */ effectiveIntelligenceConfigs?: pulumi.Input[]>; /** * Filter over location and bucket using include or exclude semantics. Resources that match the include or exclude filter are exclusively included or excluded from the Storage Intelligence plan. * Structure is documented below. */ filter?: pulumi.Input; /** * Identifier of the GCP Organization. For GCP org, this field should be organization number. */ name?: pulumi.Input; /** * The trial configuration of the Storage Intelligence resource. * Structure is documented below. */ trialConfigs?: pulumi.Input[]>; /** * The time at which the Storage Intelligence Config resource is last updated. */ updateTime?: pulumi.Input; } /** * The set of arguments for constructing a ControlOrganizationIntelligenceConfig resource. */ export interface ControlOrganizationIntelligenceConfigArgs { /** * Edition configuration of the Storage Intelligence resource. Valid values are INHERIT, DISABLED, TRIAL and STANDARD. */ editionConfig?: pulumi.Input; /** * Filter over location and bucket using include or exclude semantics. Resources that match the include or exclude filter are exclusively included or excluded from the Storage Intelligence plan. * Structure is documented below. */ filter?: pulumi.Input; /** * Identifier of the GCP Organization. For GCP org, this field should be organization number. */ name?: pulumi.Input; }