@pulumi/gcp 6.40.0 → 6.41.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/appengine/standardAppVersion.d.ts +28 -0
- package/appengine/standardAppVersion.js +18 -0
- package/appengine/standardAppVersion.js.map +1 -1
- package/bigquery/reservation.d.ts +29 -1
- package/bigquery/reservation.js +6 -1
- package/bigquery/reservation.js.map +1 -1
- package/bigqueryanalyticshub/index.d.ts +12 -0
- package/bigqueryanalyticshub/index.js +21 -1
- package/bigqueryanalyticshub/index.js.map +1 -1
- package/bigqueryanalyticshub/listing.d.ts +280 -0
- package/bigqueryanalyticshub/listing.js +146 -0
- package/bigqueryanalyticshub/listing.js.map +1 -0
- package/bigqueryanalyticshub/listingIamBinding.d.ts +149 -0
- package/bigqueryanalyticshub/listingIamBinding.js +100 -0
- package/bigqueryanalyticshub/listingIamBinding.js.map +1 -0
- package/bigqueryanalyticshub/listingIamMember.d.ts +149 -0
- package/bigqueryanalyticshub/listingIamMember.js +100 -0
- package/bigqueryanalyticshub/listingIamMember.js.map +1 -0
- package/bigqueryanalyticshub/listingIamPolicy.d.ts +138 -0
- package/bigqueryanalyticshub/listingIamPolicy.js +93 -0
- package/bigqueryanalyticshub/listingIamPolicy.js.map +1 -0
- package/bigquerydatapolicy/dataPolicy.d.ts +178 -0
- package/bigquerydatapolicy/dataPolicy.js +122 -0
- package/bigquerydatapolicy/dataPolicy.js.map +1 -0
- package/bigquerydatapolicy/dataPolicyIamBinding.d.ts +128 -0
- package/bigquerydatapolicy/dataPolicyIamBinding.js +95 -0
- package/bigquerydatapolicy/dataPolicyIamBinding.js.map +1 -0
- package/bigquerydatapolicy/dataPolicyIamMember.d.ts +128 -0
- package/bigquerydatapolicy/dataPolicyIamMember.js +95 -0
- package/bigquerydatapolicy/dataPolicyIamMember.js.map +1 -0
- package/bigquerydatapolicy/dataPolicyIamPolicy.d.ts +117 -0
- package/bigquerydatapolicy/dataPolicyIamPolicy.js +88 -0
- package/bigquerydatapolicy/dataPolicyIamPolicy.js.map +1 -0
- package/bigquerydatapolicy/index.d.ts +12 -0
- package/bigquerydatapolicy/index.js +37 -0
- package/bigquerydatapolicy/index.js.map +1 -0
- package/cloudfunctionsv2/getFunction.d.ts +79 -0
- package/cloudfunctionsv2/getFunction.js +41 -0
- package/cloudfunctionsv2/getFunction.js.map +1 -0
- package/cloudfunctionsv2/index.d.ts +3 -0
- package/cloudfunctionsv2/index.js +4 -1
- package/cloudfunctionsv2/index.js.map +1 -1
- package/cloudids/endpoint.d.ts +197 -0
- package/cloudids/endpoint.js +127 -0
- package/cloudids/endpoint.js.map +1 -0
- package/cloudids/index.d.ts +3 -0
- package/cloudids/index.js +22 -0
- package/cloudids/index.js.map +1 -0
- package/cloudrun/service.d.ts +37 -0
- package/cloudrun/service.js +37 -0
- package/cloudrun/service.js.map +1 -1
- package/compute/backendBucket.d.ts +15 -0
- package/compute/backendBucket.js +2 -0
- package/compute/backendBucket.js.map +1 -1
- package/compute/backendService.d.ts +15 -0
- package/compute/backendService.js +2 -0
- package/compute/backendService.js.map +1 -1
- package/compute/getBackendBucket.d.ts +1 -0
- package/compute/getBackendBucket.js.map +1 -1
- package/compute/getBackendService.d.ts +1 -0
- package/compute/getBackendService.js.map +1 -1
- package/compute/getSnapshot.d.ts +106 -0
- package/compute/getSnapshot.js +50 -0
- package/compute/getSnapshot.js.map +1 -0
- package/compute/index.d.ts +6 -0
- package/compute/index.js +11 -3
- package/compute/index.js.map +1 -1
- package/compute/instance.d.ts +9 -3
- package/compute/instance.js +3 -0
- package/compute/instance.js.map +1 -1
- package/compute/regionTargetTcpProxy.d.ts +203 -0
- package/compute/regionTargetTcpProxy.js +93 -0
- package/compute/regionTargetTcpProxy.js.map +1 -0
- package/config/vars.d.ts +2 -0
- package/config/vars.js +12 -0
- package/config/vars.js.map +1 -1
- package/dataflow/flexTemplateJob.d.ts +0 -6
- package/dataflow/flexTemplateJob.js.map +1 -1
- package/datafusion/instance.d.ts +39 -0
- package/datafusion/instance.js +26 -0
- package/datafusion/instance.js.map +1 -1
- package/dataproc/metastoreFederation.d.ts +40 -2
- package/dataproc/metastoreFederation.js +38 -0
- package/dataproc/metastoreFederation.js.map +1 -1
- package/datastream/connectionProfile.d.ts +25 -0
- package/datastream/connectionProfile.js +15 -0
- package/datastream/connectionProfile.js.map +1 -1
- package/dns/managedZone.d.ts +32 -0
- package/dns/managedZone.js +19 -0
- package/dns/managedZone.js.map +1 -1
- package/index.d.ts +3 -1
- package/index.js +6 -2
- package/index.js.map +1 -1
- package/orgpolicy/customConstraint.d.ts +204 -0
- package/orgpolicy/customConstraint.js +141 -0
- package/orgpolicy/customConstraint.js.map +1 -0
- package/orgpolicy/index.d.ts +3 -0
- package/orgpolicy/index.js +6 -1
- package/orgpolicy/index.js.map +1 -1
- package/package.json +2 -2
- package/package.json.dev +2 -2
- package/provider.d.ts +4 -0
- package/provider.js +2 -0
- package/provider.js.map +1 -1
- package/secretmanager/secretVersion.d.ts +1 -1
- package/secretmanager/secretVersion.js +1 -1
- package/sql/user.d.ts +5 -3
- package/sql/user.js +3 -1
- package/sql/user.js.map +1 -1
- package/storage/bucket.d.ts +15 -3
- package/storage/bucket.js +2 -0
- package/storage/bucket.js.map +1 -1
- package/storage/getBucket.d.ts +1 -0
- package/storage/getBucket.js.map +1 -1
- package/types/input.d.ts +228 -14
- package/types/output.d.ts +361 -16
- package/vertex/aiFeatureStoreEntityTypeFeature.d.ts +182 -0
- package/vertex/aiFeatureStoreEntityTypeFeature.js +121 -0
- package/vertex/aiFeatureStoreEntityTypeFeature.js.map +1 -0
- package/vertex/index.d.ts +3 -0
- package/vertex/index.js +6 -1
- package/vertex/index.js.map +1 -1
- package/vpcaccess/getConnector.d.ts +89 -0
- package/vpcaccess/getConnector.js +49 -0
- package/vpcaccess/getConnector.js.map +1 -0
- package/vpcaccess/index.d.ts +3 -0
- package/vpcaccess/index.js +4 -1
- package/vpcaccess/index.js.map +1 -1
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
|
|
3
|
+
// *** Do not edit by hand unless you're certain you know what you are doing! ***
|
|
4
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
5
|
+
exports.ListingIamMember = void 0;
|
|
6
|
+
const pulumi = require("@pulumi/pulumi");
|
|
7
|
+
const utilities = require("../utilities");
|
|
8
|
+
/**
|
|
9
|
+
* ## Import
|
|
10
|
+
*
|
|
11
|
+
* For all import syntaxes, the "resource in question" can take any of the following forms* projects/{{project}}/locations/{{location}}/dataExchanges/{{data_exchange_id}}/listings/{{listing_id}} * {{project}}/{{location}}/{{data_exchange_id}}/{{listing_id}} * {{location}}/{{data_exchange_id}}/{{listing_id}} * {{listing_id}} Any variables not passed in the import command will be taken from the provider configuration. Bigquery Analytics Hub listing IAM resources can be imported using the resource identifiers, role, and member. IAM member imports use space-delimited identifiersthe resource in question, the role, and the member identity, e.g.
|
|
12
|
+
*
|
|
13
|
+
* ```sh
|
|
14
|
+
* $ pulumi import gcp:bigqueryanalyticshub/listingIamMember:ListingIamMember editor "projects/{{project}}/locations/{{location}}/dataExchanges/{{data_exchange_id}}/listings/{{listing_id}} roles/viewer user:jane@example.com"
|
|
15
|
+
* ```
|
|
16
|
+
*
|
|
17
|
+
* IAM binding imports use space-delimited identifiersthe resource in question and the role, e.g.
|
|
18
|
+
*
|
|
19
|
+
* ```sh
|
|
20
|
+
* $ pulumi import gcp:bigqueryanalyticshub/listingIamMember:ListingIamMember editor "projects/{{project}}/locations/{{location}}/dataExchanges/{{data_exchange_id}}/listings/{{listing_id}} roles/viewer"
|
|
21
|
+
* ```
|
|
22
|
+
*
|
|
23
|
+
* IAM policy imports use the identifier of the resource in question, e.g.
|
|
24
|
+
*
|
|
25
|
+
* ```sh
|
|
26
|
+
* $ pulumi import gcp:bigqueryanalyticshub/listingIamMember:ListingIamMember editor projects/{{project}}/locations/{{location}}/dataExchanges/{{data_exchange_id}}/listings/{{listing_id}}
|
|
27
|
+
* ```
|
|
28
|
+
*
|
|
29
|
+
* -> **Custom Roles**If you're importing a IAM resource with a custom role, make sure to use the
|
|
30
|
+
*
|
|
31
|
+
* full name of the custom role, e.g. `[projects/my-project|organizations/my-org]/roles/my-custom-role`.
|
|
32
|
+
*/
|
|
33
|
+
class ListingIamMember extends pulumi.CustomResource {
|
|
34
|
+
constructor(name, argsOrState, opts) {
|
|
35
|
+
let resourceInputs = {};
|
|
36
|
+
opts = opts || {};
|
|
37
|
+
if (opts.id) {
|
|
38
|
+
const state = argsOrState;
|
|
39
|
+
resourceInputs["condition"] = state ? state.condition : undefined;
|
|
40
|
+
resourceInputs["dataExchangeId"] = state ? state.dataExchangeId : undefined;
|
|
41
|
+
resourceInputs["etag"] = state ? state.etag : undefined;
|
|
42
|
+
resourceInputs["listingId"] = state ? state.listingId : undefined;
|
|
43
|
+
resourceInputs["location"] = state ? state.location : undefined;
|
|
44
|
+
resourceInputs["member"] = state ? state.member : undefined;
|
|
45
|
+
resourceInputs["project"] = state ? state.project : undefined;
|
|
46
|
+
resourceInputs["role"] = state ? state.role : undefined;
|
|
47
|
+
}
|
|
48
|
+
else {
|
|
49
|
+
const args = argsOrState;
|
|
50
|
+
if ((!args || args.dataExchangeId === undefined) && !opts.urn) {
|
|
51
|
+
throw new Error("Missing required property 'dataExchangeId'");
|
|
52
|
+
}
|
|
53
|
+
if ((!args || args.listingId === undefined) && !opts.urn) {
|
|
54
|
+
throw new Error("Missing required property 'listingId'");
|
|
55
|
+
}
|
|
56
|
+
if ((!args || args.member === undefined) && !opts.urn) {
|
|
57
|
+
throw new Error("Missing required property 'member'");
|
|
58
|
+
}
|
|
59
|
+
if ((!args || args.role === undefined) && !opts.urn) {
|
|
60
|
+
throw new Error("Missing required property 'role'");
|
|
61
|
+
}
|
|
62
|
+
resourceInputs["condition"] = args ? args.condition : undefined;
|
|
63
|
+
resourceInputs["dataExchangeId"] = args ? args.dataExchangeId : undefined;
|
|
64
|
+
resourceInputs["listingId"] = args ? args.listingId : undefined;
|
|
65
|
+
resourceInputs["location"] = args ? args.location : undefined;
|
|
66
|
+
resourceInputs["member"] = args ? args.member : undefined;
|
|
67
|
+
resourceInputs["project"] = args ? args.project : undefined;
|
|
68
|
+
resourceInputs["role"] = args ? args.role : undefined;
|
|
69
|
+
resourceInputs["etag"] = undefined /*out*/;
|
|
70
|
+
}
|
|
71
|
+
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
|
|
72
|
+
super(ListingIamMember.__pulumiType, name, resourceInputs, opts);
|
|
73
|
+
}
|
|
74
|
+
/**
|
|
75
|
+
* Get an existing ListingIamMember resource's state with the given name, ID, and optional extra
|
|
76
|
+
* properties used to qualify the lookup.
|
|
77
|
+
*
|
|
78
|
+
* @param name The _unique_ name of the resulting resource.
|
|
79
|
+
* @param id The _unique_ provider ID of the resource to lookup.
|
|
80
|
+
* @param state Any extra arguments used during the lookup.
|
|
81
|
+
* @param opts Optional settings to control the behavior of the CustomResource.
|
|
82
|
+
*/
|
|
83
|
+
static get(name, id, state, opts) {
|
|
84
|
+
return new ListingIamMember(name, state, Object.assign(Object.assign({}, opts), { id: id }));
|
|
85
|
+
}
|
|
86
|
+
/**
|
|
87
|
+
* Returns true if the given object is an instance of ListingIamMember. This is designed to work even
|
|
88
|
+
* when multiple copies of the Pulumi SDK have been loaded into the same process.
|
|
89
|
+
*/
|
|
90
|
+
static isInstance(obj) {
|
|
91
|
+
if (obj === undefined || obj === null) {
|
|
92
|
+
return false;
|
|
93
|
+
}
|
|
94
|
+
return obj['__pulumiType'] === ListingIamMember.__pulumiType;
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
exports.ListingIamMember = ListingIamMember;
|
|
98
|
+
/** @internal */
|
|
99
|
+
ListingIamMember.__pulumiType = 'gcp:bigqueryanalyticshub/listingIamMember:ListingIamMember';
|
|
100
|
+
//# sourceMappingURL=listingIamMember.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"listingIamMember.js","sourceRoot":"","sources":["../../bigqueryanalyticshub/listingIamMember.ts"],"names":[],"mappings":";AAAA,wFAAwF;AACxF,iFAAiF;;;AAEjF,yCAAyC;AAGzC,0CAA0C;AAE1C;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,MAAa,gBAAiB,SAAQ,MAAM,CAAC,cAAc;IAmEvD,YAAY,IAAY,EAAE,WAA0D,EAAE,IAAmC;QACrH,IAAI,cAAc,GAAkB,EAAE,CAAC;QACvC,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;QAClB,IAAI,IAAI,CAAC,EAAE,EAAE;YACT,MAAM,KAAK,GAAG,WAAgD,CAAC;YAC/D,cAAc,CAAC,WAAW,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC;YAClE,cAAc,CAAC,gBAAgB,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,CAAC,SAAS,CAAC;YAC5E,cAAc,CAAC,MAAM,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;YACxD,cAAc,CAAC,WAAW,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC;YAClE,cAAc,CAAC,UAAU,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC;YAChE,cAAc,CAAC,QAAQ,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC;YAC5D,cAAc,CAAC,SAAS,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC;YAC9D,cAAc,CAAC,MAAM,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;SAC3D;aAAM;YACH,MAAM,IAAI,GAAG,WAA+C,CAAC;YAC7D,IAAI,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,cAAc,KAAK,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;gBAC3D,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAC;aACjE;YACD,IAAI,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,SAAS,KAAK,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;gBACtD,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAC;aAC5D;YACD,IAAI,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;gBACnD,MAAM,IAAI,KAAK,CAAC,oCAAoC,CAAC,CAAC;aACzD;YACD,IAAI,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;gBACjD,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAC;aACvD;YACD,cAAc,CAAC,WAAW,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC;YAChE,cAAc,CAAC,gBAAgB,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,SAAS,CAAC;YAC1E,cAAc,CAAC,WAAW,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC;YAChE,cAAc,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC;YAC9D,cAAc,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC;YAC1D,cAAc,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC;YAC5D,cAAc,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;YACtD,cAAc,CAAC,MAAM,CAAC,GAAG,SAAS,CAAC,OAAO,CAAC;SAC9C;QACD,IAAI,GAAG,MAAM,CAAC,YAAY,CAAC,SAAS,CAAC,oBAAoB,EAAE,EAAE,IAAI,CAAC,CAAC;QACnE,KAAK,CAAC,gBAAgB,CAAC,YAAY,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,CAAC,CAAC;IACrE,CAAC;IAxGD;;;;;;;;OAQG;IACI,MAAM,CAAC,GAAG,CAAC,IAAY,EAAE,EAA2B,EAAE,KAA6B,EAAE,IAAmC;QAC3H,OAAO,IAAI,gBAAgB,CAAC,IAAI,EAAO,KAAK,kCAAO,IAAI,KAAE,EAAE,EAAE,EAAE,IAAG,CAAC;IACvE,CAAC;IAKD;;;OAGG;IACI,MAAM,CAAC,UAAU,CAAC,GAAQ;QAC7B,IAAI,GAAG,KAAK,SAAS,IAAI,GAAG,KAAK,IAAI,EAAE;YACnC,OAAO,KAAK,CAAC;SAChB;QACD,OAAO,GAAG,CAAC,cAAc,CAAC,KAAK,gBAAgB,CAAC,YAAY,CAAC;IACjE,CAAC;;AA1BL,4CA0GC;AA5FG,gBAAgB;AACO,6BAAY,GAAG,4DAA4D,CAAC"}
|
|
@@ -0,0 +1,138 @@
|
|
|
1
|
+
import * as pulumi from "@pulumi/pulumi";
|
|
2
|
+
/**
|
|
3
|
+
* ## Import
|
|
4
|
+
*
|
|
5
|
+
* For all import syntaxes, the "resource in question" can take any of the following forms* projects/{{project}}/locations/{{location}}/dataExchanges/{{data_exchange_id}}/listings/{{listing_id}} * {{project}}/{{location}}/{{data_exchange_id}}/{{listing_id}} * {{location}}/{{data_exchange_id}}/{{listing_id}} * {{listing_id}} Any variables not passed in the import command will be taken from the provider configuration. Bigquery Analytics Hub listing IAM resources can be imported using the resource identifiers, role, and member. IAM member imports use space-delimited identifiersthe resource in question, the role, and the member identity, e.g.
|
|
6
|
+
*
|
|
7
|
+
* ```sh
|
|
8
|
+
* $ pulumi import gcp:bigqueryanalyticshub/listingIamPolicy:ListingIamPolicy editor "projects/{{project}}/locations/{{location}}/dataExchanges/{{data_exchange_id}}/listings/{{listing_id}} roles/viewer user:jane@example.com"
|
|
9
|
+
* ```
|
|
10
|
+
*
|
|
11
|
+
* IAM binding imports use space-delimited identifiersthe resource in question and the role, e.g.
|
|
12
|
+
*
|
|
13
|
+
* ```sh
|
|
14
|
+
* $ pulumi import gcp:bigqueryanalyticshub/listingIamPolicy:ListingIamPolicy editor "projects/{{project}}/locations/{{location}}/dataExchanges/{{data_exchange_id}}/listings/{{listing_id}} roles/viewer"
|
|
15
|
+
* ```
|
|
16
|
+
*
|
|
17
|
+
* IAM policy imports use the identifier of the resource in question, e.g.
|
|
18
|
+
*
|
|
19
|
+
* ```sh
|
|
20
|
+
* $ pulumi import gcp:bigqueryanalyticshub/listingIamPolicy:ListingIamPolicy editor projects/{{project}}/locations/{{location}}/dataExchanges/{{data_exchange_id}}/listings/{{listing_id}}
|
|
21
|
+
* ```
|
|
22
|
+
*
|
|
23
|
+
* -> **Custom Roles**If you're importing a IAM resource with a custom role, make sure to use the
|
|
24
|
+
*
|
|
25
|
+
* full name of the custom role, e.g. `[projects/my-project|organizations/my-org]/roles/my-custom-role`.
|
|
26
|
+
*/
|
|
27
|
+
export declare class ListingIamPolicy extends pulumi.CustomResource {
|
|
28
|
+
/**
|
|
29
|
+
* Get an existing ListingIamPolicy resource's state with the given name, ID, and optional extra
|
|
30
|
+
* properties used to qualify the lookup.
|
|
31
|
+
*
|
|
32
|
+
* @param name The _unique_ name of the resulting resource.
|
|
33
|
+
* @param id The _unique_ provider ID of the resource to lookup.
|
|
34
|
+
* @param state Any extra arguments used during the lookup.
|
|
35
|
+
* @param opts Optional settings to control the behavior of the CustomResource.
|
|
36
|
+
*/
|
|
37
|
+
static get(name: string, id: pulumi.Input<pulumi.ID>, state?: ListingIamPolicyState, opts?: pulumi.CustomResourceOptions): ListingIamPolicy;
|
|
38
|
+
/**
|
|
39
|
+
* Returns true if the given object is an instance of ListingIamPolicy. This is designed to work even
|
|
40
|
+
* when multiple copies of the Pulumi SDK have been loaded into the same process.
|
|
41
|
+
*/
|
|
42
|
+
static isInstance(obj: any): obj is ListingIamPolicy;
|
|
43
|
+
/**
|
|
44
|
+
* The ID of the data exchange. Must contain only Unicode letters, numbers (0-9), underscores (_). Should not use characters that require URL-escaping, or characters outside of ASCII, spaces. Used to find the parent resource to bind the IAM policy to
|
|
45
|
+
*/
|
|
46
|
+
readonly dataExchangeId: pulumi.Output<string>;
|
|
47
|
+
/**
|
|
48
|
+
* (Computed) The etag of the IAM policy.
|
|
49
|
+
*/
|
|
50
|
+
readonly etag: pulumi.Output<string>;
|
|
51
|
+
/**
|
|
52
|
+
* The ID of the listing. Must contain only Unicode letters, numbers (0-9), underscores (_). Should not use characters that require URL-escaping, or characters outside of ASCII, spaces. Used to find the parent resource to bind the IAM policy to
|
|
53
|
+
*/
|
|
54
|
+
readonly listingId: pulumi.Output<string>;
|
|
55
|
+
/**
|
|
56
|
+
* The name of the location this data exchange listing.
|
|
57
|
+
* Used to find the parent resource to bind the IAM policy to
|
|
58
|
+
*/
|
|
59
|
+
readonly location: pulumi.Output<string>;
|
|
60
|
+
/**
|
|
61
|
+
* The policy data generated by
|
|
62
|
+
* a `gcp.organizations.getIAMPolicy` data source.
|
|
63
|
+
*/
|
|
64
|
+
readonly policyData: pulumi.Output<string>;
|
|
65
|
+
/**
|
|
66
|
+
* The ID of the project in which the resource belongs.
|
|
67
|
+
* If it is not provided, the project will be parsed from the identifier of the parent resource. If no project is provided in the parent identifier and no project is specified, the provider project is used.
|
|
68
|
+
*/
|
|
69
|
+
readonly project: pulumi.Output<string>;
|
|
70
|
+
/**
|
|
71
|
+
* Create a ListingIamPolicy resource with the given unique name, arguments, and options.
|
|
72
|
+
*
|
|
73
|
+
* @param name The _unique_ name of the resource.
|
|
74
|
+
* @param args The arguments to use to populate this resource's properties.
|
|
75
|
+
* @param opts A bag of options that control this resource's behavior.
|
|
76
|
+
*/
|
|
77
|
+
constructor(name: string, args: ListingIamPolicyArgs, opts?: pulumi.CustomResourceOptions);
|
|
78
|
+
}
|
|
79
|
+
/**
|
|
80
|
+
* Input properties used for looking up and filtering ListingIamPolicy resources.
|
|
81
|
+
*/
|
|
82
|
+
export interface ListingIamPolicyState {
|
|
83
|
+
/**
|
|
84
|
+
* The ID of the data exchange. Must contain only Unicode letters, numbers (0-9), underscores (_). Should not use characters that require URL-escaping, or characters outside of ASCII, spaces. Used to find the parent resource to bind the IAM policy to
|
|
85
|
+
*/
|
|
86
|
+
dataExchangeId?: pulumi.Input<string>;
|
|
87
|
+
/**
|
|
88
|
+
* (Computed) The etag of the IAM policy.
|
|
89
|
+
*/
|
|
90
|
+
etag?: pulumi.Input<string>;
|
|
91
|
+
/**
|
|
92
|
+
* The ID of the listing. Must contain only Unicode letters, numbers (0-9), underscores (_). Should not use characters that require URL-escaping, or characters outside of ASCII, spaces. Used to find the parent resource to bind the IAM policy to
|
|
93
|
+
*/
|
|
94
|
+
listingId?: pulumi.Input<string>;
|
|
95
|
+
/**
|
|
96
|
+
* The name of the location this data exchange listing.
|
|
97
|
+
* Used to find the parent resource to bind the IAM policy to
|
|
98
|
+
*/
|
|
99
|
+
location?: pulumi.Input<string>;
|
|
100
|
+
/**
|
|
101
|
+
* The policy data generated by
|
|
102
|
+
* a `gcp.organizations.getIAMPolicy` data source.
|
|
103
|
+
*/
|
|
104
|
+
policyData?: pulumi.Input<string>;
|
|
105
|
+
/**
|
|
106
|
+
* The ID of the project in which the resource belongs.
|
|
107
|
+
* If it is not provided, the project will be parsed from the identifier of the parent resource. If no project is provided in the parent identifier and no project is specified, the provider project is used.
|
|
108
|
+
*/
|
|
109
|
+
project?: pulumi.Input<string>;
|
|
110
|
+
}
|
|
111
|
+
/**
|
|
112
|
+
* The set of arguments for constructing a ListingIamPolicy resource.
|
|
113
|
+
*/
|
|
114
|
+
export interface ListingIamPolicyArgs {
|
|
115
|
+
/**
|
|
116
|
+
* The ID of the data exchange. Must contain only Unicode letters, numbers (0-9), underscores (_). Should not use characters that require URL-escaping, or characters outside of ASCII, spaces. Used to find the parent resource to bind the IAM policy to
|
|
117
|
+
*/
|
|
118
|
+
dataExchangeId: pulumi.Input<string>;
|
|
119
|
+
/**
|
|
120
|
+
* The ID of the listing. Must contain only Unicode letters, numbers (0-9), underscores (_). Should not use characters that require URL-escaping, or characters outside of ASCII, spaces. Used to find the parent resource to bind the IAM policy to
|
|
121
|
+
*/
|
|
122
|
+
listingId: pulumi.Input<string>;
|
|
123
|
+
/**
|
|
124
|
+
* The name of the location this data exchange listing.
|
|
125
|
+
* Used to find the parent resource to bind the IAM policy to
|
|
126
|
+
*/
|
|
127
|
+
location?: pulumi.Input<string>;
|
|
128
|
+
/**
|
|
129
|
+
* The policy data generated by
|
|
130
|
+
* a `gcp.organizations.getIAMPolicy` data source.
|
|
131
|
+
*/
|
|
132
|
+
policyData: pulumi.Input<string>;
|
|
133
|
+
/**
|
|
134
|
+
* The ID of the project in which the resource belongs.
|
|
135
|
+
* If it is not provided, the project will be parsed from the identifier of the parent resource. If no project is provided in the parent identifier and no project is specified, the provider project is used.
|
|
136
|
+
*/
|
|
137
|
+
project?: pulumi.Input<string>;
|
|
138
|
+
}
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
|
|
3
|
+
// *** Do not edit by hand unless you're certain you know what you are doing! ***
|
|
4
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
5
|
+
exports.ListingIamPolicy = void 0;
|
|
6
|
+
const pulumi = require("@pulumi/pulumi");
|
|
7
|
+
const utilities = require("../utilities");
|
|
8
|
+
/**
|
|
9
|
+
* ## Import
|
|
10
|
+
*
|
|
11
|
+
* For all import syntaxes, the "resource in question" can take any of the following forms* projects/{{project}}/locations/{{location}}/dataExchanges/{{data_exchange_id}}/listings/{{listing_id}} * {{project}}/{{location}}/{{data_exchange_id}}/{{listing_id}} * {{location}}/{{data_exchange_id}}/{{listing_id}} * {{listing_id}} Any variables not passed in the import command will be taken from the provider configuration. Bigquery Analytics Hub listing IAM resources can be imported using the resource identifiers, role, and member. IAM member imports use space-delimited identifiersthe resource in question, the role, and the member identity, e.g.
|
|
12
|
+
*
|
|
13
|
+
* ```sh
|
|
14
|
+
* $ pulumi import gcp:bigqueryanalyticshub/listingIamPolicy:ListingIamPolicy editor "projects/{{project}}/locations/{{location}}/dataExchanges/{{data_exchange_id}}/listings/{{listing_id}} roles/viewer user:jane@example.com"
|
|
15
|
+
* ```
|
|
16
|
+
*
|
|
17
|
+
* IAM binding imports use space-delimited identifiersthe resource in question and the role, e.g.
|
|
18
|
+
*
|
|
19
|
+
* ```sh
|
|
20
|
+
* $ pulumi import gcp:bigqueryanalyticshub/listingIamPolicy:ListingIamPolicy editor "projects/{{project}}/locations/{{location}}/dataExchanges/{{data_exchange_id}}/listings/{{listing_id}} roles/viewer"
|
|
21
|
+
* ```
|
|
22
|
+
*
|
|
23
|
+
* IAM policy imports use the identifier of the resource in question, e.g.
|
|
24
|
+
*
|
|
25
|
+
* ```sh
|
|
26
|
+
* $ pulumi import gcp:bigqueryanalyticshub/listingIamPolicy:ListingIamPolicy editor projects/{{project}}/locations/{{location}}/dataExchanges/{{data_exchange_id}}/listings/{{listing_id}}
|
|
27
|
+
* ```
|
|
28
|
+
*
|
|
29
|
+
* -> **Custom Roles**If you're importing a IAM resource with a custom role, make sure to use the
|
|
30
|
+
*
|
|
31
|
+
* full name of the custom role, e.g. `[projects/my-project|organizations/my-org]/roles/my-custom-role`.
|
|
32
|
+
*/
|
|
33
|
+
class ListingIamPolicy extends pulumi.CustomResource {
|
|
34
|
+
constructor(name, argsOrState, opts) {
|
|
35
|
+
let resourceInputs = {};
|
|
36
|
+
opts = opts || {};
|
|
37
|
+
if (opts.id) {
|
|
38
|
+
const state = argsOrState;
|
|
39
|
+
resourceInputs["dataExchangeId"] = state ? state.dataExchangeId : undefined;
|
|
40
|
+
resourceInputs["etag"] = state ? state.etag : undefined;
|
|
41
|
+
resourceInputs["listingId"] = state ? state.listingId : undefined;
|
|
42
|
+
resourceInputs["location"] = state ? state.location : undefined;
|
|
43
|
+
resourceInputs["policyData"] = state ? state.policyData : undefined;
|
|
44
|
+
resourceInputs["project"] = state ? state.project : undefined;
|
|
45
|
+
}
|
|
46
|
+
else {
|
|
47
|
+
const args = argsOrState;
|
|
48
|
+
if ((!args || args.dataExchangeId === undefined) && !opts.urn) {
|
|
49
|
+
throw new Error("Missing required property 'dataExchangeId'");
|
|
50
|
+
}
|
|
51
|
+
if ((!args || args.listingId === undefined) && !opts.urn) {
|
|
52
|
+
throw new Error("Missing required property 'listingId'");
|
|
53
|
+
}
|
|
54
|
+
if ((!args || args.policyData === undefined) && !opts.urn) {
|
|
55
|
+
throw new Error("Missing required property 'policyData'");
|
|
56
|
+
}
|
|
57
|
+
resourceInputs["dataExchangeId"] = args ? args.dataExchangeId : undefined;
|
|
58
|
+
resourceInputs["listingId"] = args ? args.listingId : undefined;
|
|
59
|
+
resourceInputs["location"] = args ? args.location : undefined;
|
|
60
|
+
resourceInputs["policyData"] = args ? args.policyData : undefined;
|
|
61
|
+
resourceInputs["project"] = args ? args.project : undefined;
|
|
62
|
+
resourceInputs["etag"] = undefined /*out*/;
|
|
63
|
+
}
|
|
64
|
+
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
|
|
65
|
+
super(ListingIamPolicy.__pulumiType, name, resourceInputs, opts);
|
|
66
|
+
}
|
|
67
|
+
/**
|
|
68
|
+
* Get an existing ListingIamPolicy resource's state with the given name, ID, and optional extra
|
|
69
|
+
* properties used to qualify the lookup.
|
|
70
|
+
*
|
|
71
|
+
* @param name The _unique_ name of the resulting resource.
|
|
72
|
+
* @param id The _unique_ provider ID of the resource to lookup.
|
|
73
|
+
* @param state Any extra arguments used during the lookup.
|
|
74
|
+
* @param opts Optional settings to control the behavior of the CustomResource.
|
|
75
|
+
*/
|
|
76
|
+
static get(name, id, state, opts) {
|
|
77
|
+
return new ListingIamPolicy(name, state, Object.assign(Object.assign({}, opts), { id: id }));
|
|
78
|
+
}
|
|
79
|
+
/**
|
|
80
|
+
* Returns true if the given object is an instance of ListingIamPolicy. This is designed to work even
|
|
81
|
+
* when multiple copies of the Pulumi SDK have been loaded into the same process.
|
|
82
|
+
*/
|
|
83
|
+
static isInstance(obj) {
|
|
84
|
+
if (obj === undefined || obj === null) {
|
|
85
|
+
return false;
|
|
86
|
+
}
|
|
87
|
+
return obj['__pulumiType'] === ListingIamPolicy.__pulumiType;
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
exports.ListingIamPolicy = ListingIamPolicy;
|
|
91
|
+
/** @internal */
|
|
92
|
+
ListingIamPolicy.__pulumiType = 'gcp:bigqueryanalyticshub/listingIamPolicy:ListingIamPolicy';
|
|
93
|
+
//# sourceMappingURL=listingIamPolicy.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"listingIamPolicy.js","sourceRoot":"","sources":["../../bigqueryanalyticshub/listingIamPolicy.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,178 @@
|
|
|
1
|
+
import * as pulumi from "@pulumi/pulumi";
|
|
2
|
+
import * as inputs from "../types/input";
|
|
3
|
+
import * as outputs from "../types/output";
|
|
4
|
+
/**
|
|
5
|
+
* ## Example Usage
|
|
6
|
+
* ### Bigquery Datapolicy Data Policy Basic
|
|
7
|
+
*
|
|
8
|
+
* ```typescript
|
|
9
|
+
* import * as pulumi from "@pulumi/pulumi";
|
|
10
|
+
* import * as gcp from "@pulumi/gcp";
|
|
11
|
+
*
|
|
12
|
+
* const taxonomy = new gcp.datacatalog.Taxonomy("taxonomy", {
|
|
13
|
+
* region: "us-central1",
|
|
14
|
+
* displayName: "taxonomy",
|
|
15
|
+
* description: "A collection of policy tags",
|
|
16
|
+
* activatedPolicyTypes: ["FINE_GRAINED_ACCESS_CONTROL"],
|
|
17
|
+
* }, {
|
|
18
|
+
* provider: google_beta,
|
|
19
|
+
* });
|
|
20
|
+
* const policyTag = new gcp.datacatalog.PolicyTag("policyTag", {
|
|
21
|
+
* taxonomy: taxonomy.id,
|
|
22
|
+
* displayName: "Low security",
|
|
23
|
+
* description: "A policy tag normally associated with low security items",
|
|
24
|
+
* }, {
|
|
25
|
+
* provider: google_beta,
|
|
26
|
+
* });
|
|
27
|
+
* const dataPolicy = new gcp.bigquerydatapolicy.DataPolicy("dataPolicy", {
|
|
28
|
+
* location: "us-central1",
|
|
29
|
+
* dataPolicyId: "data_policy",
|
|
30
|
+
* policyTag: policyTag.name,
|
|
31
|
+
* dataPolicyType: "COLUMN_LEVEL_SECURITY_POLICY",
|
|
32
|
+
* }, {
|
|
33
|
+
* provider: google_beta,
|
|
34
|
+
* });
|
|
35
|
+
* ```
|
|
36
|
+
*
|
|
37
|
+
* ## Import
|
|
38
|
+
*
|
|
39
|
+
* DataPolicy can be imported using any of these accepted formats
|
|
40
|
+
*
|
|
41
|
+
* ```sh
|
|
42
|
+
* $ pulumi import gcp:bigquerydatapolicy/dataPolicy:DataPolicy default projects/{{project}}/locations/{{location}}/dataPolicies/{{data_policy_id}}
|
|
43
|
+
* ```
|
|
44
|
+
*
|
|
45
|
+
* ```sh
|
|
46
|
+
* $ pulumi import gcp:bigquerydatapolicy/dataPolicy:DataPolicy default {{project}}/{{location}}/{{data_policy_id}}
|
|
47
|
+
* ```
|
|
48
|
+
*
|
|
49
|
+
* ```sh
|
|
50
|
+
* $ pulumi import gcp:bigquerydatapolicy/dataPolicy:DataPolicy default {{location}}/{{data_policy_id}}
|
|
51
|
+
* ```
|
|
52
|
+
*/
|
|
53
|
+
export declare class DataPolicy extends pulumi.CustomResource {
|
|
54
|
+
/**
|
|
55
|
+
* Get an existing DataPolicy resource's state with the given name, ID, and optional extra
|
|
56
|
+
* properties used to qualify the lookup.
|
|
57
|
+
*
|
|
58
|
+
* @param name The _unique_ name of the resulting resource.
|
|
59
|
+
* @param id The _unique_ provider ID of the resource to lookup.
|
|
60
|
+
* @param state Any extra arguments used during the lookup.
|
|
61
|
+
* @param opts Optional settings to control the behavior of the CustomResource.
|
|
62
|
+
*/
|
|
63
|
+
static get(name: string, id: pulumi.Input<pulumi.ID>, state?: DataPolicyState, opts?: pulumi.CustomResourceOptions): DataPolicy;
|
|
64
|
+
/**
|
|
65
|
+
* Returns true if the given object is an instance of DataPolicy. This is designed to work even
|
|
66
|
+
* when multiple copies of the Pulumi SDK have been loaded into the same process.
|
|
67
|
+
*/
|
|
68
|
+
static isInstance(obj: any): obj is DataPolicy;
|
|
69
|
+
/**
|
|
70
|
+
* The data masking policy that specifies the data masking rule to use.
|
|
71
|
+
* Structure is documented below.
|
|
72
|
+
*/
|
|
73
|
+
readonly dataMaskingPolicy: pulumi.Output<outputs.bigquerydatapolicy.DataPolicyDataMaskingPolicy | undefined>;
|
|
74
|
+
/**
|
|
75
|
+
* User-assigned (human readable) ID of the data policy that needs to be unique within a project. Used as {dataPolicyId} in part of the resource name.
|
|
76
|
+
*/
|
|
77
|
+
readonly dataPolicyId: pulumi.Output<string>;
|
|
78
|
+
/**
|
|
79
|
+
* The enrollment level of the service.
|
|
80
|
+
* Possible values are `COLUMN_LEVEL_SECURITY_POLICY` and `DATA_MASKING_POLICY`.
|
|
81
|
+
*/
|
|
82
|
+
readonly dataPolicyType: pulumi.Output<string>;
|
|
83
|
+
/**
|
|
84
|
+
* The name of the location of the data policy.
|
|
85
|
+
*/
|
|
86
|
+
readonly location: pulumi.Output<string>;
|
|
87
|
+
/**
|
|
88
|
+
* Resource name of this data policy, in the format of
|
|
89
|
+
* projects/{project_number}/locations/{locationId}/dataPolicies/{dataPolicyId}.
|
|
90
|
+
*/
|
|
91
|
+
readonly name: pulumi.Output<string>;
|
|
92
|
+
/**
|
|
93
|
+
* Policy tag resource name, in the format of projects/{project_number}/locations/{locationId}/taxonomies/{taxonomyId}/policyTags/{policyTag_id}.
|
|
94
|
+
*/
|
|
95
|
+
readonly policyTag: pulumi.Output<string>;
|
|
96
|
+
/**
|
|
97
|
+
* The ID of the project in which the resource belongs.
|
|
98
|
+
* If it is not provided, the provider project is used.
|
|
99
|
+
*/
|
|
100
|
+
readonly project: pulumi.Output<string>;
|
|
101
|
+
/**
|
|
102
|
+
* Create a DataPolicy resource with the given unique name, arguments, and options.
|
|
103
|
+
*
|
|
104
|
+
* @param name The _unique_ name of the resource.
|
|
105
|
+
* @param args The arguments to use to populate this resource's properties.
|
|
106
|
+
* @param opts A bag of options that control this resource's behavior.
|
|
107
|
+
*/
|
|
108
|
+
constructor(name: string, args: DataPolicyArgs, opts?: pulumi.CustomResourceOptions);
|
|
109
|
+
}
|
|
110
|
+
/**
|
|
111
|
+
* Input properties used for looking up and filtering DataPolicy resources.
|
|
112
|
+
*/
|
|
113
|
+
export interface DataPolicyState {
|
|
114
|
+
/**
|
|
115
|
+
* The data masking policy that specifies the data masking rule to use.
|
|
116
|
+
* Structure is documented below.
|
|
117
|
+
*/
|
|
118
|
+
dataMaskingPolicy?: pulumi.Input<inputs.bigquerydatapolicy.DataPolicyDataMaskingPolicy>;
|
|
119
|
+
/**
|
|
120
|
+
* User-assigned (human readable) ID of the data policy that needs to be unique within a project. Used as {dataPolicyId} in part of the resource name.
|
|
121
|
+
*/
|
|
122
|
+
dataPolicyId?: pulumi.Input<string>;
|
|
123
|
+
/**
|
|
124
|
+
* The enrollment level of the service.
|
|
125
|
+
* Possible values are `COLUMN_LEVEL_SECURITY_POLICY` and `DATA_MASKING_POLICY`.
|
|
126
|
+
*/
|
|
127
|
+
dataPolicyType?: pulumi.Input<string>;
|
|
128
|
+
/**
|
|
129
|
+
* The name of the location of the data policy.
|
|
130
|
+
*/
|
|
131
|
+
location?: pulumi.Input<string>;
|
|
132
|
+
/**
|
|
133
|
+
* Resource name of this data policy, in the format of
|
|
134
|
+
* projects/{project_number}/locations/{locationId}/dataPolicies/{dataPolicyId}.
|
|
135
|
+
*/
|
|
136
|
+
name?: pulumi.Input<string>;
|
|
137
|
+
/**
|
|
138
|
+
* Policy tag resource name, in the format of projects/{project_number}/locations/{locationId}/taxonomies/{taxonomyId}/policyTags/{policyTag_id}.
|
|
139
|
+
*/
|
|
140
|
+
policyTag?: pulumi.Input<string>;
|
|
141
|
+
/**
|
|
142
|
+
* The ID of the project in which the resource belongs.
|
|
143
|
+
* If it is not provided, the provider project is used.
|
|
144
|
+
*/
|
|
145
|
+
project?: pulumi.Input<string>;
|
|
146
|
+
}
|
|
147
|
+
/**
|
|
148
|
+
* The set of arguments for constructing a DataPolicy resource.
|
|
149
|
+
*/
|
|
150
|
+
export interface DataPolicyArgs {
|
|
151
|
+
/**
|
|
152
|
+
* The data masking policy that specifies the data masking rule to use.
|
|
153
|
+
* Structure is documented below.
|
|
154
|
+
*/
|
|
155
|
+
dataMaskingPolicy?: pulumi.Input<inputs.bigquerydatapolicy.DataPolicyDataMaskingPolicy>;
|
|
156
|
+
/**
|
|
157
|
+
* User-assigned (human readable) ID of the data policy that needs to be unique within a project. Used as {dataPolicyId} in part of the resource name.
|
|
158
|
+
*/
|
|
159
|
+
dataPolicyId: pulumi.Input<string>;
|
|
160
|
+
/**
|
|
161
|
+
* The enrollment level of the service.
|
|
162
|
+
* Possible values are `COLUMN_LEVEL_SECURITY_POLICY` and `DATA_MASKING_POLICY`.
|
|
163
|
+
*/
|
|
164
|
+
dataPolicyType: pulumi.Input<string>;
|
|
165
|
+
/**
|
|
166
|
+
* The name of the location of the data policy.
|
|
167
|
+
*/
|
|
168
|
+
location: pulumi.Input<string>;
|
|
169
|
+
/**
|
|
170
|
+
* Policy tag resource name, in the format of projects/{project_number}/locations/{locationId}/taxonomies/{taxonomyId}/policyTags/{policyTag_id}.
|
|
171
|
+
*/
|
|
172
|
+
policyTag: pulumi.Input<string>;
|
|
173
|
+
/**
|
|
174
|
+
* The ID of the project in which the resource belongs.
|
|
175
|
+
* If it is not provided, the provider project is used.
|
|
176
|
+
*/
|
|
177
|
+
project?: pulumi.Input<string>;
|
|
178
|
+
}
|
|
@@ -0,0 +1,122 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
|
|
3
|
+
// *** Do not edit by hand unless you're certain you know what you are doing! ***
|
|
4
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
5
|
+
exports.DataPolicy = void 0;
|
|
6
|
+
const pulumi = require("@pulumi/pulumi");
|
|
7
|
+
const utilities = require("../utilities");
|
|
8
|
+
/**
|
|
9
|
+
* ## Example Usage
|
|
10
|
+
* ### Bigquery Datapolicy Data Policy Basic
|
|
11
|
+
*
|
|
12
|
+
* ```typescript
|
|
13
|
+
* import * as pulumi from "@pulumi/pulumi";
|
|
14
|
+
* import * as gcp from "@pulumi/gcp";
|
|
15
|
+
*
|
|
16
|
+
* const taxonomy = new gcp.datacatalog.Taxonomy("taxonomy", {
|
|
17
|
+
* region: "us-central1",
|
|
18
|
+
* displayName: "taxonomy",
|
|
19
|
+
* description: "A collection of policy tags",
|
|
20
|
+
* activatedPolicyTypes: ["FINE_GRAINED_ACCESS_CONTROL"],
|
|
21
|
+
* }, {
|
|
22
|
+
* provider: google_beta,
|
|
23
|
+
* });
|
|
24
|
+
* const policyTag = new gcp.datacatalog.PolicyTag("policyTag", {
|
|
25
|
+
* taxonomy: taxonomy.id,
|
|
26
|
+
* displayName: "Low security",
|
|
27
|
+
* description: "A policy tag normally associated with low security items",
|
|
28
|
+
* }, {
|
|
29
|
+
* provider: google_beta,
|
|
30
|
+
* });
|
|
31
|
+
* const dataPolicy = new gcp.bigquerydatapolicy.DataPolicy("dataPolicy", {
|
|
32
|
+
* location: "us-central1",
|
|
33
|
+
* dataPolicyId: "data_policy",
|
|
34
|
+
* policyTag: policyTag.name,
|
|
35
|
+
* dataPolicyType: "COLUMN_LEVEL_SECURITY_POLICY",
|
|
36
|
+
* }, {
|
|
37
|
+
* provider: google_beta,
|
|
38
|
+
* });
|
|
39
|
+
* ```
|
|
40
|
+
*
|
|
41
|
+
* ## Import
|
|
42
|
+
*
|
|
43
|
+
* DataPolicy can be imported using any of these accepted formats
|
|
44
|
+
*
|
|
45
|
+
* ```sh
|
|
46
|
+
* $ pulumi import gcp:bigquerydatapolicy/dataPolicy:DataPolicy default projects/{{project}}/locations/{{location}}/dataPolicies/{{data_policy_id}}
|
|
47
|
+
* ```
|
|
48
|
+
*
|
|
49
|
+
* ```sh
|
|
50
|
+
* $ pulumi import gcp:bigquerydatapolicy/dataPolicy:DataPolicy default {{project}}/{{location}}/{{data_policy_id}}
|
|
51
|
+
* ```
|
|
52
|
+
*
|
|
53
|
+
* ```sh
|
|
54
|
+
* $ pulumi import gcp:bigquerydatapolicy/dataPolicy:DataPolicy default {{location}}/{{data_policy_id}}
|
|
55
|
+
* ```
|
|
56
|
+
*/
|
|
57
|
+
class DataPolicy extends pulumi.CustomResource {
|
|
58
|
+
constructor(name, argsOrState, opts) {
|
|
59
|
+
let resourceInputs = {};
|
|
60
|
+
opts = opts || {};
|
|
61
|
+
if (opts.id) {
|
|
62
|
+
const state = argsOrState;
|
|
63
|
+
resourceInputs["dataMaskingPolicy"] = state ? state.dataMaskingPolicy : undefined;
|
|
64
|
+
resourceInputs["dataPolicyId"] = state ? state.dataPolicyId : undefined;
|
|
65
|
+
resourceInputs["dataPolicyType"] = state ? state.dataPolicyType : undefined;
|
|
66
|
+
resourceInputs["location"] = state ? state.location : undefined;
|
|
67
|
+
resourceInputs["name"] = state ? state.name : undefined;
|
|
68
|
+
resourceInputs["policyTag"] = state ? state.policyTag : undefined;
|
|
69
|
+
resourceInputs["project"] = state ? state.project : undefined;
|
|
70
|
+
}
|
|
71
|
+
else {
|
|
72
|
+
const args = argsOrState;
|
|
73
|
+
if ((!args || args.dataPolicyId === undefined) && !opts.urn) {
|
|
74
|
+
throw new Error("Missing required property 'dataPolicyId'");
|
|
75
|
+
}
|
|
76
|
+
if ((!args || args.dataPolicyType === undefined) && !opts.urn) {
|
|
77
|
+
throw new Error("Missing required property 'dataPolicyType'");
|
|
78
|
+
}
|
|
79
|
+
if ((!args || args.location === undefined) && !opts.urn) {
|
|
80
|
+
throw new Error("Missing required property 'location'");
|
|
81
|
+
}
|
|
82
|
+
if ((!args || args.policyTag === undefined) && !opts.urn) {
|
|
83
|
+
throw new Error("Missing required property 'policyTag'");
|
|
84
|
+
}
|
|
85
|
+
resourceInputs["dataMaskingPolicy"] = args ? args.dataMaskingPolicy : undefined;
|
|
86
|
+
resourceInputs["dataPolicyId"] = args ? args.dataPolicyId : undefined;
|
|
87
|
+
resourceInputs["dataPolicyType"] = args ? args.dataPolicyType : undefined;
|
|
88
|
+
resourceInputs["location"] = args ? args.location : undefined;
|
|
89
|
+
resourceInputs["policyTag"] = args ? args.policyTag : undefined;
|
|
90
|
+
resourceInputs["project"] = args ? args.project : undefined;
|
|
91
|
+
resourceInputs["name"] = undefined /*out*/;
|
|
92
|
+
}
|
|
93
|
+
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
|
|
94
|
+
super(DataPolicy.__pulumiType, name, resourceInputs, opts);
|
|
95
|
+
}
|
|
96
|
+
/**
|
|
97
|
+
* Get an existing DataPolicy resource's state with the given name, ID, and optional extra
|
|
98
|
+
* properties used to qualify the lookup.
|
|
99
|
+
*
|
|
100
|
+
* @param name The _unique_ name of the resulting resource.
|
|
101
|
+
* @param id The _unique_ provider ID of the resource to lookup.
|
|
102
|
+
* @param state Any extra arguments used during the lookup.
|
|
103
|
+
* @param opts Optional settings to control the behavior of the CustomResource.
|
|
104
|
+
*/
|
|
105
|
+
static get(name, id, state, opts) {
|
|
106
|
+
return new DataPolicy(name, state, Object.assign(Object.assign({}, opts), { id: id }));
|
|
107
|
+
}
|
|
108
|
+
/**
|
|
109
|
+
* Returns true if the given object is an instance of DataPolicy. This is designed to work even
|
|
110
|
+
* when multiple copies of the Pulumi SDK have been loaded into the same process.
|
|
111
|
+
*/
|
|
112
|
+
static isInstance(obj) {
|
|
113
|
+
if (obj === undefined || obj === null) {
|
|
114
|
+
return false;
|
|
115
|
+
}
|
|
116
|
+
return obj['__pulumiType'] === DataPolicy.__pulumiType;
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
exports.DataPolicy = DataPolicy;
|
|
120
|
+
/** @internal */
|
|
121
|
+
DataPolicy.__pulumiType = 'gcp:bigquerydatapolicy/dataPolicy:DataPolicy';
|
|
122
|
+
//# sourceMappingURL=dataPolicy.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dataPolicy.js","sourceRoot":"","sources":["../../bigquerydatapolicy/dataPolicy.ts"],"names":[],"mappings":"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"}
|