@pulumi/gcp
Version:
A Pulumi package for creating and managing Google Cloud Platform resources.
132 lines • 6.21 kB
JavaScript
;
// *** WARNING: this file was generated by pulumi-language-nodejs. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
var desc = Object.getOwnPropertyDescriptor(m, k);
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
desc = { enumerable: true, get: function() { return m[k]; } };
}
Object.defineProperty(o, k2, desc);
}) : (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
o[k2] = m[k];
}));
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
Object.defineProperty(o, "default", { enumerable: true, value: v });
}) : function(o, v) {
o["default"] = v;
});
var __importStar = (this && this.__importStar) || function (mod) {
if (mod && mod.__esModule) return mod;
var result = {};
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
__setModuleDefault(result, mod);
return result;
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.ControlFolderIntelligenceConfig = void 0;
const pulumi = __importStar(require("@pulumi/pulumi"));
const utilities = __importStar(require("../utilities"));
/**
* The Folder Storage Intelligence resource represents GCS Storage Intelligence operating on individual GCP Folder. Storage Intelligence is a singleton resource and individual instance exists on each GCP Folder.
*
* 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 Folder. 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, absense 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 Folder Intelligence Config Basic
*
* ```typescript
* import * as pulumi from "@pulumi/pulumi";
* import * as gcp from "@pulumi/gcp";
*
* const example = new gcp.storage.ControlFolderIntelligenceConfig("example", {
* name: "12345678",
* editionConfig: "STANDARD",
* filter: {
* includedCloudStorageBuckets: {
* bucketIdRegexes: [
* "test-id-1*",
* "test-id-2*",
* ],
* },
* excludedCloudStorageLocations: {
* locations: [
* "test-location-1*",
* "test-locations-2*",
* ],
* },
* },
* });
* ```
*
* ## Import
*
* FolderIntelligenceConfig can be imported using any of these accepted formats:
*
* * `folders/{{name}}/locations/global/intelligenceConfig`
* * `{{name}}`
*
* When using the `pulumi import` command, FolderIntelligenceConfig can be imported using one of the formats above. For example:
*
* ```sh
* $ pulumi import gcp:storage/controlFolderIntelligenceConfig:ControlFolderIntelligenceConfig default folders/{{name}}/locations/global/intelligenceConfig
* $ pulumi import gcp:storage/controlFolderIntelligenceConfig:ControlFolderIntelligenceConfig default {{name}}
* ```
*/
class ControlFolderIntelligenceConfig extends pulumi.CustomResource {
/**
* Get an existing ControlFolderIntelligenceConfig 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, id, state, opts) {
return new ControlFolderIntelligenceConfig(name, state, { ...opts, id: id });
}
/** @internal */
static __pulumiType = 'gcp:storage/controlFolderIntelligenceConfig:ControlFolderIntelligenceConfig';
/**
* Returns true if the given object is an instance of ControlFolderIntelligenceConfig. This is designed to work even
* when multiple copies of the Pulumi SDK have been loaded into the same process.
*/
static isInstance(obj) {
if (obj === undefined || obj === null) {
return false;
}
return obj['__pulumiType'] === ControlFolderIntelligenceConfig.__pulumiType;
}
constructor(name, argsOrState, opts) {
let resourceInputs = {};
opts = opts || {};
if (opts.id) {
const state = argsOrState;
resourceInputs["editionConfig"] = state?.editionConfig;
resourceInputs["effectiveIntelligenceConfigs"] = state?.effectiveIntelligenceConfigs;
resourceInputs["filter"] = state?.filter;
resourceInputs["name"] = state?.name;
resourceInputs["trialConfigs"] = state?.trialConfigs;
resourceInputs["updateTime"] = state?.updateTime;
}
else {
const args = argsOrState;
resourceInputs["editionConfig"] = args?.editionConfig;
resourceInputs["filter"] = args?.filter;
resourceInputs["name"] = args?.name;
resourceInputs["effectiveIntelligenceConfigs"] = undefined /*out*/;
resourceInputs["trialConfigs"] = undefined /*out*/;
resourceInputs["updateTime"] = undefined /*out*/;
}
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
super(ControlFolderIntelligenceConfig.__pulumiType, name, resourceInputs, opts);
}
}
exports.ControlFolderIntelligenceConfig = ControlFolderIntelligenceConfig;
//# sourceMappingURL=controlFolderIntelligenceConfig.js.map