@pulumi/gcp 6.44.0 → 6.45.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.
Files changed (164) hide show
  1. package/alloydb/instance.d.ts +3 -0
  2. package/alloydb/instance.js +3 -0
  3. package/alloydb/instance.js.map +1 -1
  4. package/bigtable/gcpolicy.d.ts +58 -32
  5. package/bigtable/gcpolicy.js +45 -32
  6. package/bigtable/gcpolicy.js.map +1 -1
  7. package/bigtable/instance.d.ts +6 -3
  8. package/bigtable/instance.js.map +1 -1
  9. package/certificateauthority/authority.d.ts +3 -2
  10. package/certificateauthority/authority.js +3 -2
  11. package/certificateauthority/authority.js.map +1 -1
  12. package/certificateauthority/certificate.d.ts +12 -5
  13. package/certificateauthority/certificate.js +12 -5
  14. package/certificateauthority/certificate.js.map +1 -1
  15. package/cloudrunv2/index.d.ts +6 -0
  16. package/cloudrunv2/index.js +27 -0
  17. package/cloudrunv2/index.js.map +1 -0
  18. package/cloudrunv2/job.d.ts +501 -0
  19. package/cloudrunv2/job.js +321 -0
  20. package/cloudrunv2/job.js.map +1 -0
  21. package/cloudrunv2/service.d.ts +574 -0
  22. package/cloudrunv2/service.js +334 -0
  23. package/cloudrunv2/service.js.map +1 -0
  24. package/compute/backendService.d.ts +19 -0
  25. package/compute/backendService.js +19 -0
  26. package/compute/backendService.js.map +1 -1
  27. package/compute/forwardingRule.d.ts +21 -30
  28. package/compute/forwardingRule.js.map +1 -1
  29. package/compute/instanceGroupManager.d.ts +27 -0
  30. package/compute/instanceGroupManager.js +2 -0
  31. package/compute/instanceGroupManager.js.map +1 -1
  32. package/compute/regionInstanceGroupManager.d.ts +27 -0
  33. package/compute/regionInstanceGroupManager.js +2 -0
  34. package/compute/regionInstanceGroupManager.js.map +1 -1
  35. package/compute/routerInterface.d.ts +52 -31
  36. package/compute/routerInterface.js +4 -0
  37. package/compute/routerInterface.js.map +1 -1
  38. package/compute/securityPolicy.d.ts +83 -0
  39. package/compute/securityPolicy.js +73 -0
  40. package/compute/securityPolicy.js.map +1 -1
  41. package/config/vars.d.ts +3 -0
  42. package/config/vars.js +18 -0
  43. package/config/vars.js.map +1 -1
  44. package/container/cluster.d.ts +7 -4
  45. package/container/cluster.js.map +1 -1
  46. package/container/nodePool.d.ts +9 -6
  47. package/container/nodePool.js.map +1 -1
  48. package/datafusion/instance.d.ts +97 -5
  49. package/datafusion/instance.js +52 -5
  50. package/datafusion/instance.js.map +1 -1
  51. package/dataproc/metastoreService.d.ts +49 -0
  52. package/dataproc/metastoreService.js +34 -0
  53. package/dataproc/metastoreService.js.map +1 -1
  54. package/datastream/privateConnection.d.ts +16 -0
  55. package/datastream/privateConnection.js +4 -0
  56. package/datastream/privateConnection.js.map +1 -1
  57. package/eventarc/googleChannelConfig.d.ts +142 -0
  58. package/eventarc/googleChannelConfig.js +110 -0
  59. package/eventarc/googleChannelConfig.js.map +1 -0
  60. package/eventarc/index.d.ts +3 -0
  61. package/eventarc/index.js +6 -1
  62. package/eventarc/index.js.map +1 -1
  63. package/firebase/getAndroidApp.d.ts +36 -0
  64. package/firebase/getAndroidApp.js +22 -0
  65. package/firebase/getAndroidApp.js.map +1 -0
  66. package/firebase/index.d.ts +6 -0
  67. package/firebase/index.js +9 -1
  68. package/firebase/index.js.map +1 -1
  69. package/firebase/storageBucket.d.ts +109 -0
  70. package/firebase/storageBucket.js +91 -0
  71. package/firebase/storageBucket.js.map +1 -0
  72. package/gkebackup/backupPlan.d.ts +403 -0
  73. package/gkebackup/backupPlan.js +259 -0
  74. package/gkebackup/backupPlan.js.map +1 -0
  75. package/gkebackup/index.d.ts +3 -0
  76. package/gkebackup/index.js +22 -0
  77. package/gkebackup/index.js.map +1 -0
  78. package/gkehub/featureMembership.d.ts +1 -0
  79. package/gkehub/featureMembership.js +1 -0
  80. package/gkehub/featureMembership.js.map +1 -1
  81. package/iam/index.d.ts +3 -0
  82. package/iam/index.js +6 -1
  83. package/iam/index.js.map +1 -1
  84. package/iam/workforcePoolProvider.d.ts +510 -0
  85. package/iam/workforcePoolProvider.js +213 -0
  86. package/iam/workforcePoolProvider.js.map +1 -0
  87. package/index.d.ts +3 -1
  88. package/index.js +6 -2
  89. package/index.js.map +1 -1
  90. package/logging/billingAccountBucketConfig.d.ts +20 -0
  91. package/logging/billingAccountBucketConfig.js +2 -0
  92. package/logging/billingAccountBucketConfig.js.map +1 -1
  93. package/logging/folderBucketConfig.d.ts +20 -0
  94. package/logging/folderBucketConfig.js +2 -0
  95. package/logging/folderBucketConfig.js.map +1 -1
  96. package/logging/getProjectCmekSettings.d.ts +97 -0
  97. package/logging/getProjectCmekSettings.js +43 -0
  98. package/logging/getProjectCmekSettings.js.map +1 -0
  99. package/logging/index.d.ts +3 -0
  100. package/logging/index.js +4 -1
  101. package/logging/index.js.map +1 -1
  102. package/logging/organizationBucketConfig.d.ts +20 -0
  103. package/logging/organizationBucketConfig.js +2 -0
  104. package/logging/organizationBucketConfig.js.map +1 -1
  105. package/logging/projectBucketConfig.d.ts +48 -2
  106. package/logging/projectBucketConfig.js +34 -0
  107. package/logging/projectBucketConfig.js.map +1 -1
  108. package/networkservices/edgeCacheOrigin.d.ts +55 -1
  109. package/networkservices/edgeCacheOrigin.js +26 -1
  110. package/networkservices/edgeCacheOrigin.js.map +1 -1
  111. package/package.json +2 -2
  112. package/package.json.dev +2 -2
  113. package/provider.d.ts +6 -0
  114. package/provider.js +3 -0
  115. package/provider.js.map +1 -1
  116. package/securitycenter/index.d.ts +9 -0
  117. package/securitycenter/index.js +16 -1
  118. package/securitycenter/index.js.map +1 -1
  119. package/securitycenter/instanceIamBinding.d.ts +239 -0
  120. package/securitycenter/instanceIamBinding.js +218 -0
  121. package/securitycenter/instanceIamBinding.js.map +1 -0
  122. package/securitycenter/instanceIamMember.d.ts +239 -0
  123. package/securitycenter/instanceIamMember.js +218 -0
  124. package/securitycenter/instanceIamMember.js.map +1 -0
  125. package/securitycenter/instanceIamPolicy.d.ts +231 -0
  126. package/securitycenter/instanceIamPolicy.js +211 -0
  127. package/securitycenter/instanceIamPolicy.js.map +1 -0
  128. package/sql/database.d.ts +41 -0
  129. package/sql/database.js +22 -0
  130. package/sql/database.js.map +1 -1
  131. package/storage/bucket.d.ts +29 -7
  132. package/storage/bucket.js +18 -6
  133. package/storage/bucket.js.map +1 -1
  134. package/storage/getBucket.d.ts +1 -0
  135. package/storage/getBucket.js.map +1 -1
  136. package/types/input.d.ts +1544 -98
  137. package/types/output.d.ts +1559 -94
  138. package/vertex/aiFeatureStoreEntityTypeIamBinding.d.ts +119 -0
  139. package/vertex/aiFeatureStoreEntityTypeIamBinding.js +96 -0
  140. package/vertex/aiFeatureStoreEntityTypeIamBinding.js.map +1 -0
  141. package/vertex/aiFeatureStoreEntityTypeIamMember.d.ts +119 -0
  142. package/vertex/aiFeatureStoreEntityTypeIamMember.js +96 -0
  143. package/vertex/aiFeatureStoreEntityTypeIamMember.js.map +1 -0
  144. package/vertex/aiFeatureStoreEntityTypeIamPolicy.d.ts +108 -0
  145. package/vertex/aiFeatureStoreEntityTypeIamPolicy.js +89 -0
  146. package/vertex/aiFeatureStoreEntityTypeIamPolicy.js.map +1 -0
  147. package/vertex/aiFeatureStoreIamBinding.d.ts +53 -43
  148. package/vertex/aiFeatureStoreIamBinding.js +11 -37
  149. package/vertex/aiFeatureStoreIamBinding.js.map +1 -1
  150. package/vertex/aiFeatureStoreIamMember.d.ts +53 -43
  151. package/vertex/aiFeatureStoreIamMember.js +11 -37
  152. package/vertex/aiFeatureStoreIamMember.js.map +1 -1
  153. package/vertex/aiFeatureStoreIamPolicy.d.ts +50 -43
  154. package/vertex/aiFeatureStoreIamPolicy.js +11 -37
  155. package/vertex/aiFeatureStoreIamPolicy.js.map +1 -1
  156. package/vertex/aiIndex.d.ts +314 -0
  157. package/vertex/aiIndex.js +188 -0
  158. package/vertex/aiIndex.js.map +1 -0
  159. package/vertex/aiTensorboard.d.ts +242 -0
  160. package/vertex/aiTensorboard.js +146 -0
  161. package/vertex/aiTensorboard.js.map +1 -0
  162. package/vertex/index.d.ts +15 -0
  163. package/vertex/index.js +26 -1
  164. package/vertex/index.js.map +1 -1
@@ -0,0 +1,239 @@
1
+ import * as pulumi from "@pulumi/pulumi";
2
+ import * as inputs from "../types/input";
3
+ import * as outputs from "../types/output";
4
+ /**
5
+ * Represents a Data Fusion instance.
6
+ *
7
+ * To get more information about Instance, see:
8
+ *
9
+ * * [API documentation](https://cloud.google.com/data-fusion/docs/reference/rest/v1beta1/projects.locations.instances)
10
+ * * How-to Guides
11
+ * * [Official Documentation](https://cloud.google.com/data-fusion/docs/)
12
+ *
13
+ * ## Example Usage
14
+ * ### Data Fusion Instance Basic
15
+ *
16
+ * ```typescript
17
+ * import * as pulumi from "@pulumi/pulumi";
18
+ * import * as gcp from "@pulumi/gcp";
19
+ *
20
+ * const basicInstance = new gcp.datafusion.Instance("basic_instance", {
21
+ * // Mark for testing to avoid service networking connection usage that is not cleaned up
22
+ * options: {
23
+ * prober_test_run: "true",
24
+ * },
25
+ * region: "us-central1",
26
+ * type: "BASIC",
27
+ * });
28
+ * ```
29
+ * ### Data Fusion Instance Full
30
+ *
31
+ * ```typescript
32
+ * import * as pulumi from "@pulumi/pulumi";
33
+ * import * as gcp from "@pulumi/gcp";
34
+ *
35
+ * const default = gcp.appengine.getDefaultServiceAccount({});
36
+ * const network = new gcp.compute.Network("network", {});
37
+ * const privateIpAlloc = new gcp.compute.GlobalAddress("privateIpAlloc", {
38
+ * addressType: "INTERNAL",
39
+ * purpose: "VPC_PEERING",
40
+ * prefixLength: 22,
41
+ * network: network.id,
42
+ * });
43
+ * const extendedInstance = new gcp.datafusion.Instance("extendedInstance", {
44
+ * description: "My Data Fusion instance",
45
+ * displayName: "My Data Fusion instance",
46
+ * region: "us-central1",
47
+ * type: "BASIC",
48
+ * enableStackdriverLogging: true,
49
+ * enableStackdriverMonitoring: true,
50
+ * privateInstance: true,
51
+ * version: "6.6.0",
52
+ * dataprocServiceAccount: _default.then(_default => _default.email),
53
+ * labels: {
54
+ * example_key: "example_value",
55
+ * },
56
+ * networkConfig: {
57
+ * network: "default",
58
+ * ipAllocation: pulumi.all([privateIpAlloc.address, privateIpAlloc.prefixLength]).apply(([address, prefixLength]) => `${address}/${prefixLength}`),
59
+ * },
60
+ * options: {
61
+ * prober_test_run: "true",
62
+ * },
63
+ * });
64
+ * ```
65
+ * ### Data Fusion Instance Cmek
66
+ *
67
+ * ```typescript
68
+ * import * as pulumi from "@pulumi/pulumi";
69
+ * import * as gcp from "@pulumi/gcp";
70
+ *
71
+ * const keyRing = new gcp.kms.KeyRing("keyRing", {location: "us-central1"});
72
+ * const cryptoKey = new gcp.kms.CryptoKey("cryptoKey", {keyRing: keyRing.id});
73
+ * const project = gcp.organizations.getProject({});
74
+ * const cryptoKeyBinding = new gcp.kms.CryptoKeyIAMBinding("cryptoKeyBinding", {
75
+ * cryptoKeyId: cryptoKey.id,
76
+ * role: "roles/cloudkms.cryptoKeyEncrypterDecrypter",
77
+ * members: [project.then(project => `serviceAccount:service-${project.number}@gcp-sa-datafusion.iam.gserviceaccount.com`)],
78
+ * });
79
+ * const cmek = new gcp.datafusion.Instance("cmek", {
80
+ * region: "us-central1",
81
+ * type: "BASIC",
82
+ * cryptoKeyConfig: {
83
+ * keyReference: cryptoKey.id,
84
+ * },
85
+ * }, {
86
+ * dependsOn: [cryptoKeyBinding],
87
+ * });
88
+ * ```
89
+ * ### Data Fusion Instance Enterprise
90
+ *
91
+ * ```typescript
92
+ * import * as pulumi from "@pulumi/pulumi";
93
+ * import * as gcp from "@pulumi/gcp";
94
+ *
95
+ * const enterpriseInstance = new gcp.datafusion.Instance("enterprise_instance", {
96
+ * enableRbac: true,
97
+ * // Mark for testing to avoid service networking connection usage that is not cleaned up
98
+ * options: {
99
+ * prober_test_run: "true",
100
+ * },
101
+ * region: "us-central1",
102
+ * type: "ENTERPRISE",
103
+ * });
104
+ * ```
105
+ * ### Data Fusion Instance Event
106
+ *
107
+ * ```typescript
108
+ * import * as pulumi from "@pulumi/pulumi";
109
+ * import * as gcp from "@pulumi/gcp";
110
+ *
111
+ * const eventTopic = new gcp.pubsub.Topic("eventTopic", {});
112
+ * const eventInstance = new gcp.datafusion.Instance("eventInstance", {
113
+ * region: "us-central1",
114
+ * type: "BASIC",
115
+ * version: "6.7.0",
116
+ * eventPublishConfig: {
117
+ * enabled: true,
118
+ * topic: eventTopic.id,
119
+ * },
120
+ * });
121
+ * ```
122
+ * ### Data Fusion Instance Zone
123
+ *
124
+ * ```typescript
125
+ * import * as pulumi from "@pulumi/pulumi";
126
+ * import * as gcp from "@pulumi/gcp";
127
+ *
128
+ * const zone = new gcp.datafusion.Instance("zone", {
129
+ * region: "us-central1",
130
+ * type: "DEVELOPER",
131
+ * zone: "us-central1-a",
132
+ * });
133
+ * ```
134
+ *
135
+ * ## Import
136
+ *
137
+ * Instance can be imported using any of these accepted formats
138
+ *
139
+ * ```sh
140
+ * $ pulumi import gcp:securitycenter/instanceIamMember:InstanceIamMember default projects/{{project}}/locations/{{region}}/instances/{{name}}
141
+ * ```
142
+ *
143
+ * ```sh
144
+ * $ pulumi import gcp:securitycenter/instanceIamMember:InstanceIamMember default {{project}}/{{region}}/{{name}}
145
+ * ```
146
+ *
147
+ * ```sh
148
+ * $ pulumi import gcp:securitycenter/instanceIamMember:InstanceIamMember default {{region}}/{{name}}
149
+ * ```
150
+ *
151
+ * ```sh
152
+ * $ pulumi import gcp:securitycenter/instanceIamMember:InstanceIamMember default {{name}}
153
+ * ```
154
+ */
155
+ export declare class InstanceIamMember extends pulumi.CustomResource {
156
+ /**
157
+ * Get an existing InstanceIamMember resource's state with the given name, ID, and optional extra
158
+ * properties used to qualify the lookup.
159
+ *
160
+ * @param name The _unique_ name of the resulting resource.
161
+ * @param id The _unique_ provider ID of the resource to lookup.
162
+ * @param state Any extra arguments used during the lookup.
163
+ * @param opts Optional settings to control the behavior of the CustomResource.
164
+ */
165
+ static get(name: string, id: pulumi.Input<pulumi.ID>, state?: InstanceIamMemberState, opts?: pulumi.CustomResourceOptions): InstanceIamMember;
166
+ /**
167
+ * Returns true if the given object is an instance of InstanceIamMember. This is designed to work even
168
+ * when multiple copies of the Pulumi SDK have been loaded into the same process.
169
+ */
170
+ static isInstance(obj: any): obj is InstanceIamMember;
171
+ readonly condition: pulumi.Output<outputs.securitycenter.InstanceIamMemberCondition | undefined>;
172
+ readonly etag: pulumi.Output<string>;
173
+ readonly member: pulumi.Output<string>;
174
+ /**
175
+ * The ID of the instance or a fully qualified identifier for the instance.
176
+ */
177
+ readonly name: pulumi.Output<string>;
178
+ /**
179
+ * The ID of the project in which the resource belongs.
180
+ * If it is not provided, the provider project is used.
181
+ */
182
+ readonly project: pulumi.Output<string>;
183
+ /**
184
+ * The region of the Data Fusion instance.
185
+ */
186
+ readonly region: pulumi.Output<string>;
187
+ readonly role: pulumi.Output<string>;
188
+ /**
189
+ * Create a InstanceIamMember resource with the given unique name, arguments, and options.
190
+ *
191
+ * @param name The _unique_ name of the resource.
192
+ * @param args The arguments to use to populate this resource's properties.
193
+ * @param opts A bag of options that control this resource's behavior.
194
+ */
195
+ constructor(name: string, args: InstanceIamMemberArgs, opts?: pulumi.CustomResourceOptions);
196
+ }
197
+ /**
198
+ * Input properties used for looking up and filtering InstanceIamMember resources.
199
+ */
200
+ export interface InstanceIamMemberState {
201
+ condition?: pulumi.Input<inputs.securitycenter.InstanceIamMemberCondition>;
202
+ etag?: pulumi.Input<string>;
203
+ member?: pulumi.Input<string>;
204
+ /**
205
+ * The ID of the instance or a fully qualified identifier for the instance.
206
+ */
207
+ name?: pulumi.Input<string>;
208
+ /**
209
+ * The ID of the project in which the resource belongs.
210
+ * If it is not provided, the provider project is used.
211
+ */
212
+ project?: pulumi.Input<string>;
213
+ /**
214
+ * The region of the Data Fusion instance.
215
+ */
216
+ region?: pulumi.Input<string>;
217
+ role?: pulumi.Input<string>;
218
+ }
219
+ /**
220
+ * The set of arguments for constructing a InstanceIamMember resource.
221
+ */
222
+ export interface InstanceIamMemberArgs {
223
+ condition?: pulumi.Input<inputs.securitycenter.InstanceIamMemberCondition>;
224
+ member: pulumi.Input<string>;
225
+ /**
226
+ * The ID of the instance or a fully qualified identifier for the instance.
227
+ */
228
+ name?: pulumi.Input<string>;
229
+ /**
230
+ * The ID of the project in which the resource belongs.
231
+ * If it is not provided, the provider project is used.
232
+ */
233
+ project?: pulumi.Input<string>;
234
+ /**
235
+ * The region of the Data Fusion instance.
236
+ */
237
+ region?: pulumi.Input<string>;
238
+ role: pulumi.Input<string>;
239
+ }
@@ -0,0 +1,218 @@
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.InstanceIamMember = void 0;
6
+ const pulumi = require("@pulumi/pulumi");
7
+ const utilities = require("../utilities");
8
+ /**
9
+ * Represents a Data Fusion instance.
10
+ *
11
+ * To get more information about Instance, see:
12
+ *
13
+ * * [API documentation](https://cloud.google.com/data-fusion/docs/reference/rest/v1beta1/projects.locations.instances)
14
+ * * How-to Guides
15
+ * * [Official Documentation](https://cloud.google.com/data-fusion/docs/)
16
+ *
17
+ * ## Example Usage
18
+ * ### Data Fusion Instance Basic
19
+ *
20
+ * ```typescript
21
+ * import * as pulumi from "@pulumi/pulumi";
22
+ * import * as gcp from "@pulumi/gcp";
23
+ *
24
+ * const basicInstance = new gcp.datafusion.Instance("basic_instance", {
25
+ * // Mark for testing to avoid service networking connection usage that is not cleaned up
26
+ * options: {
27
+ * prober_test_run: "true",
28
+ * },
29
+ * region: "us-central1",
30
+ * type: "BASIC",
31
+ * });
32
+ * ```
33
+ * ### Data Fusion Instance Full
34
+ *
35
+ * ```typescript
36
+ * import * as pulumi from "@pulumi/pulumi";
37
+ * import * as gcp from "@pulumi/gcp";
38
+ *
39
+ * const default = gcp.appengine.getDefaultServiceAccount({});
40
+ * const network = new gcp.compute.Network("network", {});
41
+ * const privateIpAlloc = new gcp.compute.GlobalAddress("privateIpAlloc", {
42
+ * addressType: "INTERNAL",
43
+ * purpose: "VPC_PEERING",
44
+ * prefixLength: 22,
45
+ * network: network.id,
46
+ * });
47
+ * const extendedInstance = new gcp.datafusion.Instance("extendedInstance", {
48
+ * description: "My Data Fusion instance",
49
+ * displayName: "My Data Fusion instance",
50
+ * region: "us-central1",
51
+ * type: "BASIC",
52
+ * enableStackdriverLogging: true,
53
+ * enableStackdriverMonitoring: true,
54
+ * privateInstance: true,
55
+ * version: "6.6.0",
56
+ * dataprocServiceAccount: _default.then(_default => _default.email),
57
+ * labels: {
58
+ * example_key: "example_value",
59
+ * },
60
+ * networkConfig: {
61
+ * network: "default",
62
+ * ipAllocation: pulumi.all([privateIpAlloc.address, privateIpAlloc.prefixLength]).apply(([address, prefixLength]) => `${address}/${prefixLength}`),
63
+ * },
64
+ * options: {
65
+ * prober_test_run: "true",
66
+ * },
67
+ * });
68
+ * ```
69
+ * ### Data Fusion Instance Cmek
70
+ *
71
+ * ```typescript
72
+ * import * as pulumi from "@pulumi/pulumi";
73
+ * import * as gcp from "@pulumi/gcp";
74
+ *
75
+ * const keyRing = new gcp.kms.KeyRing("keyRing", {location: "us-central1"});
76
+ * const cryptoKey = new gcp.kms.CryptoKey("cryptoKey", {keyRing: keyRing.id});
77
+ * const project = gcp.organizations.getProject({});
78
+ * const cryptoKeyBinding = new gcp.kms.CryptoKeyIAMBinding("cryptoKeyBinding", {
79
+ * cryptoKeyId: cryptoKey.id,
80
+ * role: "roles/cloudkms.cryptoKeyEncrypterDecrypter",
81
+ * members: [project.then(project => `serviceAccount:service-${project.number}@gcp-sa-datafusion.iam.gserviceaccount.com`)],
82
+ * });
83
+ * const cmek = new gcp.datafusion.Instance("cmek", {
84
+ * region: "us-central1",
85
+ * type: "BASIC",
86
+ * cryptoKeyConfig: {
87
+ * keyReference: cryptoKey.id,
88
+ * },
89
+ * }, {
90
+ * dependsOn: [cryptoKeyBinding],
91
+ * });
92
+ * ```
93
+ * ### Data Fusion Instance Enterprise
94
+ *
95
+ * ```typescript
96
+ * import * as pulumi from "@pulumi/pulumi";
97
+ * import * as gcp from "@pulumi/gcp";
98
+ *
99
+ * const enterpriseInstance = new gcp.datafusion.Instance("enterprise_instance", {
100
+ * enableRbac: true,
101
+ * // Mark for testing to avoid service networking connection usage that is not cleaned up
102
+ * options: {
103
+ * prober_test_run: "true",
104
+ * },
105
+ * region: "us-central1",
106
+ * type: "ENTERPRISE",
107
+ * });
108
+ * ```
109
+ * ### Data Fusion Instance Event
110
+ *
111
+ * ```typescript
112
+ * import * as pulumi from "@pulumi/pulumi";
113
+ * import * as gcp from "@pulumi/gcp";
114
+ *
115
+ * const eventTopic = new gcp.pubsub.Topic("eventTopic", {});
116
+ * const eventInstance = new gcp.datafusion.Instance("eventInstance", {
117
+ * region: "us-central1",
118
+ * type: "BASIC",
119
+ * version: "6.7.0",
120
+ * eventPublishConfig: {
121
+ * enabled: true,
122
+ * topic: eventTopic.id,
123
+ * },
124
+ * });
125
+ * ```
126
+ * ### Data Fusion Instance Zone
127
+ *
128
+ * ```typescript
129
+ * import * as pulumi from "@pulumi/pulumi";
130
+ * import * as gcp from "@pulumi/gcp";
131
+ *
132
+ * const zone = new gcp.datafusion.Instance("zone", {
133
+ * region: "us-central1",
134
+ * type: "DEVELOPER",
135
+ * zone: "us-central1-a",
136
+ * });
137
+ * ```
138
+ *
139
+ * ## Import
140
+ *
141
+ * Instance can be imported using any of these accepted formats
142
+ *
143
+ * ```sh
144
+ * $ pulumi import gcp:securitycenter/instanceIamMember:InstanceIamMember default projects/{{project}}/locations/{{region}}/instances/{{name}}
145
+ * ```
146
+ *
147
+ * ```sh
148
+ * $ pulumi import gcp:securitycenter/instanceIamMember:InstanceIamMember default {{project}}/{{region}}/{{name}}
149
+ * ```
150
+ *
151
+ * ```sh
152
+ * $ pulumi import gcp:securitycenter/instanceIamMember:InstanceIamMember default {{region}}/{{name}}
153
+ * ```
154
+ *
155
+ * ```sh
156
+ * $ pulumi import gcp:securitycenter/instanceIamMember:InstanceIamMember default {{name}}
157
+ * ```
158
+ */
159
+ class InstanceIamMember extends pulumi.CustomResource {
160
+ /**
161
+ * Get an existing InstanceIamMember resource's state with the given name, ID, and optional extra
162
+ * properties used to qualify the lookup.
163
+ *
164
+ * @param name The _unique_ name of the resulting resource.
165
+ * @param id The _unique_ provider ID of the resource to lookup.
166
+ * @param state Any extra arguments used during the lookup.
167
+ * @param opts Optional settings to control the behavior of the CustomResource.
168
+ */
169
+ static get(name, id, state, opts) {
170
+ return new InstanceIamMember(name, state, Object.assign(Object.assign({}, opts), { id: id }));
171
+ }
172
+ /**
173
+ * Returns true if the given object is an instance of InstanceIamMember. This is designed to work even
174
+ * when multiple copies of the Pulumi SDK have been loaded into the same process.
175
+ */
176
+ static isInstance(obj) {
177
+ if (obj === undefined || obj === null) {
178
+ return false;
179
+ }
180
+ return obj['__pulumiType'] === InstanceIamMember.__pulumiType;
181
+ }
182
+ constructor(name, argsOrState, opts) {
183
+ let resourceInputs = {};
184
+ opts = opts || {};
185
+ if (opts.id) {
186
+ const state = argsOrState;
187
+ resourceInputs["condition"] = state ? state.condition : undefined;
188
+ resourceInputs["etag"] = state ? state.etag : undefined;
189
+ resourceInputs["member"] = state ? state.member : undefined;
190
+ resourceInputs["name"] = state ? state.name : undefined;
191
+ resourceInputs["project"] = state ? state.project : undefined;
192
+ resourceInputs["region"] = state ? state.region : undefined;
193
+ resourceInputs["role"] = state ? state.role : undefined;
194
+ }
195
+ else {
196
+ const args = argsOrState;
197
+ if ((!args || args.member === undefined) && !opts.urn) {
198
+ throw new Error("Missing required property 'member'");
199
+ }
200
+ if ((!args || args.role === undefined) && !opts.urn) {
201
+ throw new Error("Missing required property 'role'");
202
+ }
203
+ resourceInputs["condition"] = args ? args.condition : undefined;
204
+ resourceInputs["member"] = args ? args.member : undefined;
205
+ resourceInputs["name"] = args ? args.name : undefined;
206
+ resourceInputs["project"] = args ? args.project : undefined;
207
+ resourceInputs["region"] = args ? args.region : undefined;
208
+ resourceInputs["role"] = args ? args.role : undefined;
209
+ resourceInputs["etag"] = undefined /*out*/;
210
+ }
211
+ opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
212
+ super(InstanceIamMember.__pulumiType, name, resourceInputs, opts);
213
+ }
214
+ }
215
+ exports.InstanceIamMember = InstanceIamMember;
216
+ /** @internal */
217
+ InstanceIamMember.__pulumiType = 'gcp:securitycenter/instanceIamMember:InstanceIamMember';
218
+ //# sourceMappingURL=instanceIamMember.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"instanceIamMember.js","sourceRoot":"","sources":["../../securitycenter/instanceIamMember.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,231 @@
1
+ import * as pulumi from "@pulumi/pulumi";
2
+ /**
3
+ * Represents a Data Fusion instance.
4
+ *
5
+ * To get more information about Instance, see:
6
+ *
7
+ * * [API documentation](https://cloud.google.com/data-fusion/docs/reference/rest/v1beta1/projects.locations.instances)
8
+ * * How-to Guides
9
+ * * [Official Documentation](https://cloud.google.com/data-fusion/docs/)
10
+ *
11
+ * ## Example Usage
12
+ * ### Data Fusion Instance Basic
13
+ *
14
+ * ```typescript
15
+ * import * as pulumi from "@pulumi/pulumi";
16
+ * import * as gcp from "@pulumi/gcp";
17
+ *
18
+ * const basicInstance = new gcp.datafusion.Instance("basic_instance", {
19
+ * // Mark for testing to avoid service networking connection usage that is not cleaned up
20
+ * options: {
21
+ * prober_test_run: "true",
22
+ * },
23
+ * region: "us-central1",
24
+ * type: "BASIC",
25
+ * });
26
+ * ```
27
+ * ### Data Fusion Instance Full
28
+ *
29
+ * ```typescript
30
+ * import * as pulumi from "@pulumi/pulumi";
31
+ * import * as gcp from "@pulumi/gcp";
32
+ *
33
+ * const default = gcp.appengine.getDefaultServiceAccount({});
34
+ * const network = new gcp.compute.Network("network", {});
35
+ * const privateIpAlloc = new gcp.compute.GlobalAddress("privateIpAlloc", {
36
+ * addressType: "INTERNAL",
37
+ * purpose: "VPC_PEERING",
38
+ * prefixLength: 22,
39
+ * network: network.id,
40
+ * });
41
+ * const extendedInstance = new gcp.datafusion.Instance("extendedInstance", {
42
+ * description: "My Data Fusion instance",
43
+ * displayName: "My Data Fusion instance",
44
+ * region: "us-central1",
45
+ * type: "BASIC",
46
+ * enableStackdriverLogging: true,
47
+ * enableStackdriverMonitoring: true,
48
+ * privateInstance: true,
49
+ * version: "6.6.0",
50
+ * dataprocServiceAccount: _default.then(_default => _default.email),
51
+ * labels: {
52
+ * example_key: "example_value",
53
+ * },
54
+ * networkConfig: {
55
+ * network: "default",
56
+ * ipAllocation: pulumi.all([privateIpAlloc.address, privateIpAlloc.prefixLength]).apply(([address, prefixLength]) => `${address}/${prefixLength}`),
57
+ * },
58
+ * options: {
59
+ * prober_test_run: "true",
60
+ * },
61
+ * });
62
+ * ```
63
+ * ### Data Fusion Instance Cmek
64
+ *
65
+ * ```typescript
66
+ * import * as pulumi from "@pulumi/pulumi";
67
+ * import * as gcp from "@pulumi/gcp";
68
+ *
69
+ * const keyRing = new gcp.kms.KeyRing("keyRing", {location: "us-central1"});
70
+ * const cryptoKey = new gcp.kms.CryptoKey("cryptoKey", {keyRing: keyRing.id});
71
+ * const project = gcp.organizations.getProject({});
72
+ * const cryptoKeyBinding = new gcp.kms.CryptoKeyIAMBinding("cryptoKeyBinding", {
73
+ * cryptoKeyId: cryptoKey.id,
74
+ * role: "roles/cloudkms.cryptoKeyEncrypterDecrypter",
75
+ * members: [project.then(project => `serviceAccount:service-${project.number}@gcp-sa-datafusion.iam.gserviceaccount.com`)],
76
+ * });
77
+ * const cmek = new gcp.datafusion.Instance("cmek", {
78
+ * region: "us-central1",
79
+ * type: "BASIC",
80
+ * cryptoKeyConfig: {
81
+ * keyReference: cryptoKey.id,
82
+ * },
83
+ * }, {
84
+ * dependsOn: [cryptoKeyBinding],
85
+ * });
86
+ * ```
87
+ * ### Data Fusion Instance Enterprise
88
+ *
89
+ * ```typescript
90
+ * import * as pulumi from "@pulumi/pulumi";
91
+ * import * as gcp from "@pulumi/gcp";
92
+ *
93
+ * const enterpriseInstance = new gcp.datafusion.Instance("enterprise_instance", {
94
+ * enableRbac: true,
95
+ * // Mark for testing to avoid service networking connection usage that is not cleaned up
96
+ * options: {
97
+ * prober_test_run: "true",
98
+ * },
99
+ * region: "us-central1",
100
+ * type: "ENTERPRISE",
101
+ * });
102
+ * ```
103
+ * ### Data Fusion Instance Event
104
+ *
105
+ * ```typescript
106
+ * import * as pulumi from "@pulumi/pulumi";
107
+ * import * as gcp from "@pulumi/gcp";
108
+ *
109
+ * const eventTopic = new gcp.pubsub.Topic("eventTopic", {});
110
+ * const eventInstance = new gcp.datafusion.Instance("eventInstance", {
111
+ * region: "us-central1",
112
+ * type: "BASIC",
113
+ * version: "6.7.0",
114
+ * eventPublishConfig: {
115
+ * enabled: true,
116
+ * topic: eventTopic.id,
117
+ * },
118
+ * });
119
+ * ```
120
+ * ### Data Fusion Instance Zone
121
+ *
122
+ * ```typescript
123
+ * import * as pulumi from "@pulumi/pulumi";
124
+ * import * as gcp from "@pulumi/gcp";
125
+ *
126
+ * const zone = new gcp.datafusion.Instance("zone", {
127
+ * region: "us-central1",
128
+ * type: "DEVELOPER",
129
+ * zone: "us-central1-a",
130
+ * });
131
+ * ```
132
+ *
133
+ * ## Import
134
+ *
135
+ * Instance can be imported using any of these accepted formats
136
+ *
137
+ * ```sh
138
+ * $ pulumi import gcp:securitycenter/instanceIamPolicy:InstanceIamPolicy default projects/{{project}}/locations/{{region}}/instances/{{name}}
139
+ * ```
140
+ *
141
+ * ```sh
142
+ * $ pulumi import gcp:securitycenter/instanceIamPolicy:InstanceIamPolicy default {{project}}/{{region}}/{{name}}
143
+ * ```
144
+ *
145
+ * ```sh
146
+ * $ pulumi import gcp:securitycenter/instanceIamPolicy:InstanceIamPolicy default {{region}}/{{name}}
147
+ * ```
148
+ *
149
+ * ```sh
150
+ * $ pulumi import gcp:securitycenter/instanceIamPolicy:InstanceIamPolicy default {{name}}
151
+ * ```
152
+ */
153
+ export declare class InstanceIamPolicy extends pulumi.CustomResource {
154
+ /**
155
+ * Get an existing InstanceIamPolicy resource's state with the given name, ID, and optional extra
156
+ * properties used to qualify the lookup.
157
+ *
158
+ * @param name The _unique_ name of the resulting resource.
159
+ * @param id The _unique_ provider ID of the resource to lookup.
160
+ * @param state Any extra arguments used during the lookup.
161
+ * @param opts Optional settings to control the behavior of the CustomResource.
162
+ */
163
+ static get(name: string, id: pulumi.Input<pulumi.ID>, state?: InstanceIamPolicyState, opts?: pulumi.CustomResourceOptions): InstanceIamPolicy;
164
+ /**
165
+ * Returns true if the given object is an instance of InstanceIamPolicy. This is designed to work even
166
+ * when multiple copies of the Pulumi SDK have been loaded into the same process.
167
+ */
168
+ static isInstance(obj: any): obj is InstanceIamPolicy;
169
+ readonly etag: pulumi.Output<string>;
170
+ /**
171
+ * The ID of the instance or a fully qualified identifier for the instance.
172
+ */
173
+ readonly name: pulumi.Output<string>;
174
+ readonly policyData: pulumi.Output<string>;
175
+ /**
176
+ * The ID of the project in which the resource belongs.
177
+ * If it is not provided, the provider project is used.
178
+ */
179
+ readonly project: pulumi.Output<string>;
180
+ /**
181
+ * The region of the Data Fusion instance.
182
+ */
183
+ readonly region: pulumi.Output<string>;
184
+ /**
185
+ * Create a InstanceIamPolicy resource with the given unique name, arguments, and options.
186
+ *
187
+ * @param name The _unique_ name of the resource.
188
+ * @param args The arguments to use to populate this resource's properties.
189
+ * @param opts A bag of options that control this resource's behavior.
190
+ */
191
+ constructor(name: string, args: InstanceIamPolicyArgs, opts?: pulumi.CustomResourceOptions);
192
+ }
193
+ /**
194
+ * Input properties used for looking up and filtering InstanceIamPolicy resources.
195
+ */
196
+ export interface InstanceIamPolicyState {
197
+ etag?: pulumi.Input<string>;
198
+ /**
199
+ * The ID of the instance or a fully qualified identifier for the instance.
200
+ */
201
+ name?: pulumi.Input<string>;
202
+ policyData?: pulumi.Input<string>;
203
+ /**
204
+ * The ID of the project in which the resource belongs.
205
+ * If it is not provided, the provider project is used.
206
+ */
207
+ project?: pulumi.Input<string>;
208
+ /**
209
+ * The region of the Data Fusion instance.
210
+ */
211
+ region?: pulumi.Input<string>;
212
+ }
213
+ /**
214
+ * The set of arguments for constructing a InstanceIamPolicy resource.
215
+ */
216
+ export interface InstanceIamPolicyArgs {
217
+ /**
218
+ * The ID of the instance or a fully qualified identifier for the instance.
219
+ */
220
+ name?: pulumi.Input<string>;
221
+ policyData: pulumi.Input<string>;
222
+ /**
223
+ * The ID of the project in which the resource belongs.
224
+ * If it is not provided, the provider project is used.
225
+ */
226
+ project?: pulumi.Input<string>;
227
+ /**
228
+ * The region of the Data Fusion instance.
229
+ */
230
+ region?: pulumi.Input<string>;
231
+ }