ControlProjectIntelligenceConfig class
The Project Storage Intelligence Config resource represents GCS Storage Intelligence operating on individual GCP project. Storage Intelligence Config is a singleton resource and individual instance exists on each GCP project.
Storage Intelligence is for Storage Admins to manage GCP storage assets at scale for performance, cost, security & compliance.
> Warning: Storage Intelligence Config is a singleton resource which cannot be created or deleted. A single instance of Storage Intelligence Config exist for each GCP Project. 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 Project Intelligence Config Basic
import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";
const example = new gcp.storage.ControlProjectIntelligenceConfig("example", {
name: "test-project",
editionConfig: "TRIAL",
filter: {
includedCloudStorageBuckets: {
bucketIdRegexes: [
"test-id-1*",
"test-id-2*",
],
},
},
});
import pulumi
import pulumi_gcp as gcp
example = gcp.storage.ControlProjectIntelligenceConfig("example",
name="test-project",
edition_config="TRIAL",
filter={
"included_cloud_storage_buckets": {
"bucket_id_regexes": [
"test-id-1*",
"test-id-2*",
],
},
})
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Gcp = Pulumi.Gcp;
return await Deployment.RunAsync(() =>
{
var example = new Gcp.Storage.ControlProjectIntelligenceConfig("example", new()
{
Name = "test-project",
EditionConfig = "TRIAL",
Filter = new Gcp.Storage.Inputs.ControlProjectIntelligenceConfigFilterArgs
{
IncludedCloudStorageBuckets = new Gcp.Storage.Inputs.ControlProjectIntelligenceConfigFilterIncludedCloudStorageBucketsArgs
{
BucketIdRegexes = new[]
{
"test-id-1*",
"test-id-2*",
},
},
},
});
});
package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v9/go/gcp/storage"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := storage.NewControlProjectIntelligenceConfig(ctx, "example", &storage.ControlProjectIntelligenceConfigArgs{
Name: pulumi.String("test-project"),
EditionConfig: pulumi.String("TRIAL"),
Filter: &storage.ControlProjectIntelligenceConfigFilterArgs{
IncludedCloudStorageBuckets: &storage.ControlProjectIntelligenceConfigFilterIncludedCloudStorageBucketsArgs{
BucketIdRegexes: pulumi.StringArray{
pulumi.String("test-id-1*"),
pulumi.String("test-id-2*"),
},
},
},
})
if err != nil {
return err
}
return nil
})
}
pulumi {
required_providers {
gcp = {
source = "pulumi/gcp"
}
}
}
resource "gcp_storage_controlprojectintelligenceconfig" "example" {
name = "test-project"
edition_config = "TRIAL"
filter = {
included_cloud_storage_buckets = {
bucket_id_regexes = ["test-id-1*", "test-id-2*"]
}
}
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.gcp.storage.ControlProjectIntelligenceConfig;
import com.pulumi.gcp.storage.ControlProjectIntelligenceConfigArgs;
import com.pulumi.gcp.storage.inputs.ControlProjectIntelligenceConfigFilterArgs;
import com.pulumi.gcp.storage.inputs.ControlProjectIntelligenceConfigFilterIncludedCloudStorageBucketsArgs;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var example = new ControlProjectIntelligenceConfig("example", ControlProjectIntelligenceConfigArgs.builder()
.name("test-project")
.editionConfig("TRIAL")
.filter(ControlProjectIntelligenceConfigFilterArgs.builder()
.includedCloudStorageBuckets(ControlProjectIntelligenceConfigFilterIncludedCloudStorageBucketsArgs.builder()
.bucketIdRegexes(
"test-id-1*",
"test-id-2*")
.build())
.build())
.build());
}
}
resources:
example:
type: gcp:storage:ControlProjectIntelligenceConfig
properties:
name: test-project
editionConfig: TRIAL
filter:
includedCloudStorageBuckets:
bucketIdRegexes:
- test-id-1*
- test-id-2*
Import
ProjectIntelligenceConfig can be imported using any of these accepted formats:
projects/{{name}}/locations/global/intelligenceConfig{{name}}
When using the pulumi import command, ProjectIntelligenceConfig can be imported using one of the formats above. For example:
$ pulumi import gcp:storage/controlProjectIntelligenceConfig:ControlProjectIntelligenceConfig default projects/{{name}}/locations/global/intelligenceConfig
$ pulumi import gcp:storage/controlProjectIntelligenceConfig:ControlProjectIntelligenceConfig default {{name}}
Constructors
- ControlProjectIntelligenceConfig(String name, {ControlProjectIntelligenceConfigArgs? args, CustomResourceOptions? options})
-
Creates a new ControlProjectIntelligenceConfig.
nameThe Pulumi resource name.argsArguments used to configure this ControlProjectIntelligenceConfig. The set of arguments for ControlProjectIntelligenceConfig.optionsResource options controlling this resource's behavior. - ControlProjectIntelligenceConfig.reference(String urn)
- Creates a typed reference to an existing ControlProjectIntelligenceConfig resource.
Properties
-
childResources
→ Set<
Resource> -
finalinherited
-
completionSources
↔ Map<
String, IOutputCompletionSource> -
latefinalinherited
-
editionConfig
↔ Output<
String> -
Edition configuration of the Storage Intelligence resource. Valid values are INHERIT, TRIAL, DISABLED and STANDARD.
latefinal
-
effectiveIntelligenceConfigs
↔ Output<
List< ControlProjectIntelligenceConfigEffectiveIntelligenceConfig> > -
The Intelligence config that is effective for the resource.
Structure is documented below.
latefinal
-
filter
↔ Output<
ControlProjectIntelligenceConfigFilter?> -
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.
latefinal
- hashCode → int
-
The hash code for this object.
no setterinherited
-
id
↔ Output<
String> -
getter/setter pairinherited
- isCustom → bool
-
Returns whether this resource is provider-managed.
no setterinherited
- isProtected → bool
-
Returns whether this resource is protected from deletion.
no setterinherited
- isRemote → bool
-
Whether this resource is registered as remote.
no setterinherited
- isResourceReference → bool
-
Whether this instance represents a resource value returned over RPC.
finalinherited
-
name
↔ Output<
String> -
Identifier of the GCP project. For GCP project, this field can be project name or project number.
latefinal
-
resourceTransforms
→ List<
ResourceTransform> -
Inherited/explicit async transforms.
no setterinherited
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
-
transformations
→ List<
ResourceTransformation> -
Inherited/explicit legacy transformations.
no setterinherited
-
trialConfigs
↔ Output<
List< ControlProjectIntelligenceConfigTrialConfig> > -
The trial configuration of the Storage Intelligence resource.
Structure is documented below.
latefinal
-
updateTime
↔ Output<
String> -
The time at which the Storage Intelligence Config resource is last updated.
latefinal
-
urn
↔ Output<
String> -
latefinalinherited
Methods
-
failId(
Object error) → void -
Completes this resource ID with an error when registration fails.
inherited
-
failOutputs(
Object error) → void -
Completes all output properties with
error.inherited -
failUrn(
Object error) → void -
Completes this resource URN with an error when registration fails.
inherited
-
getProvider(
String moduleMember) → ProviderResource? -
Returns provider for
moduleMember's package, if configured.inherited -
getResourceName(
) → String -
Returns this resource's logical name.
inherited
-
getResourceType(
) → String -
Returns this resource's Pulumi type token.
inherited
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
registerOutput<
T> (String propertyName, {Object? decoder(Object?)?, bool isSecret = false}) → Output< T> -
Registers a dynamic output property for this resource.
inherited
-
resolveId(
String? value, {required bool isKnown}) → void -
Resolves the provider-assigned ID for this resource.
inherited
-
resolveOutputs(
Struct outputs) → void -
Resolves all output properties from a monitor response payload.
inherited
-
resolveUrn(
String value) → void -
Resolves this resource's URN once assigned by the engine.
inherited
-
serializeProperties(
Map< String, dynamic> properties) → Future<Struct> -
Serializes resource properties for RPC transmission.
inherited
-
toString(
) → String -
A string representation of this object.
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited
Static Methods
-
get(
String name, Input< String> id, {ControlProjectIntelligenceConfigState? state, CustomResourceOptions? options}) → ControlProjectIntelligenceConfig -
Gets an existing ControlProjectIntelligenceConfig resource's state with the given
nameandid.