@pulumi/gcp 6.15.0 → 6.15.1

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 (76) hide show
  1. package/billing/accountIamBinding.d.ts +105 -0
  2. package/billing/accountIamBinding.js +75 -0
  3. package/billing/accountIamBinding.js.map +1 -1
  4. package/billing/accountIamMember.d.ts +105 -0
  5. package/billing/accountIamMember.js +75 -0
  6. package/billing/accountIamMember.js.map +1 -1
  7. package/billing/accountIamPolicy.d.ts +99 -0
  8. package/billing/accountIamPolicy.js +75 -0
  9. package/billing/accountIamPolicy.js.map +1 -1
  10. package/cloudfunctions/functionIamBinding.d.ts +142 -0
  11. package/cloudfunctions/functionIamBinding.js +85 -0
  12. package/cloudfunctions/functionIamBinding.js.map +1 -1
  13. package/cloudfunctions/functionIamMember.d.ts +142 -0
  14. package/cloudfunctions/functionIamMember.js +85 -0
  15. package/cloudfunctions/functionIamMember.js.map +1 -1
  16. package/cloudfunctions/functionIamPolicy.d.ts +139 -0
  17. package/cloudfunctions/functionIamPolicy.js +85 -0
  18. package/cloudfunctions/functionIamPolicy.js.map +1 -1
  19. package/compute/backendServiceIamBinding.d.ts +79 -0
  20. package/compute/backendServiceIamBinding.js +25 -0
  21. package/compute/backendServiceIamBinding.js.map +1 -1
  22. package/compute/backendServiceIamMember.d.ts +79 -0
  23. package/compute/backendServiceIamMember.js +25 -0
  24. package/compute/backendServiceIamMember.js.map +1 -1
  25. package/compute/backendServiceIamPolicy.d.ts +64 -0
  26. package/compute/backendServiceIamPolicy.js +25 -0
  27. package/compute/backendServiceIamPolicy.js.map +1 -1
  28. package/compute/mangedSslCertificate.d.ts +157 -27
  29. package/compute/mangedSslCertificate.js +97 -0
  30. package/compute/mangedSslCertificate.js.map +1 -1
  31. package/compute/regionBackendServiceIamBinding.d.ts +100 -0
  32. package/compute/regionBackendServiceIamBinding.js +25 -0
  33. package/compute/regionBackendServiceIamBinding.js.map +1 -1
  34. package/compute/regionBackendServiceIamMember.d.ts +100 -0
  35. package/compute/regionBackendServiceIamMember.js +25 -0
  36. package/compute/regionBackendServiceIamMember.js.map +1 -1
  37. package/compute/regionBackendServiceIamPolicy.d.ts +85 -0
  38. package/compute/regionBackendServiceIamPolicy.js +25 -0
  39. package/compute/regionBackendServiceIamPolicy.js.map +1 -1
  40. package/datacatalog/tagTemplateIamBinding.d.ts +121 -0
  41. package/datacatalog/tagTemplateIamBinding.js +79 -0
  42. package/datacatalog/tagTemplateIamBinding.js.map +1 -1
  43. package/datacatalog/tagTemplateIamMember.d.ts +121 -0
  44. package/datacatalog/tagTemplateIamMember.js +79 -0
  45. package/datacatalog/tagTemplateIamMember.js.map +1 -1
  46. package/datacatalog/tagTemplateIamPolicy.d.ts +118 -0
  47. package/datacatalog/tagTemplateIamPolicy.js +79 -0
  48. package/datacatalog/tagTemplateIamPolicy.js.map +1 -1
  49. package/folder/iamAuditConfig.d.ts +200 -8
  50. package/folder/iamAuditConfig.js +183 -0
  51. package/folder/iamAuditConfig.js.map +1 -1
  52. package/folder/iammember.d.ts +225 -0
  53. package/folder/iammember.js +183 -0
  54. package/folder/iammember.js.map +1 -1
  55. package/folder/iampolicy.d.ts +213 -0
  56. package/folder/iampolicy.js +183 -0
  57. package/folder/iampolicy.js.map +1 -1
  58. package/kms/registry.d.ts +149 -18
  59. package/kms/registry.js +89 -0
  60. package/kms/registry.js.map +1 -1
  61. package/monitoring/getSecretVersion.d.ts +52 -0
  62. package/monitoring/getSecretVersion.js +14 -0
  63. package/monitoring/getSecretVersion.js.map +1 -1
  64. package/organizations/iammember.d.ts +228 -3
  65. package/organizations/iammember.js +186 -0
  66. package/organizations/iammember.js.map +1 -1
  67. package/organizations/iampolicy.d.ts +216 -3
  68. package/organizations/iampolicy.js +186 -0
  69. package/organizations/iampolicy.js.map +1 -1
  70. package/package.json +2 -2
  71. package/package.json.dev +2 -2
  72. package/sourcerepo/getRepository.d.ts +29 -0
  73. package/sourcerepo/getRepository.js +17 -0
  74. package/sourcerepo/getRepository.js.map +1 -1
  75. package/types/input.d.ts +77 -0
  76. package/types/output.d.ts +77 -0
@@ -1,5 +1,188 @@
1
1
  import * as pulumi from "@pulumi/pulumi";
2
2
  import { input as inputs, output as outputs } from "../types";
3
+ /**
4
+ * Four different resources help you manage your IAM policy for a folder. Each of these resources serves a different use case:
5
+ *
6
+ * * `gcp.folder.IAMPolicy`: Authoritative. Sets the IAM policy for the folder and replaces any existing policy already attached.
7
+ * * `gcp.folder.IAMBinding`: Authoritative for a given role. Updates the IAM policy to grant a role to a list of members. Other roles within the IAM policy for the folder are preserved.
8
+ * * `gcp.folder.IAMMember`: Non-authoritative. Updates the IAM policy to grant a role to a new member. Other members for the role for the folder are preserved.
9
+ * * `gcp.folder.IamAuditConfig`: Authoritative for a given service. Updates the IAM policy to enable audit logging for the given service.
10
+ *
11
+ * > **Note:** `gcp.folder.IAMPolicy` **cannot** be used in conjunction with `gcp.folder.IAMBinding`, `gcp.folder.IAMMember`, or `gcp.folder.IamAuditConfig` or they will fight over what your policy should be.
12
+ *
13
+ * > **Note:** `gcp.folder.IAMBinding` resources **can be** used in conjunction with `gcp.folder.IAMMember` resources **only if** they do not grant privilege to the same role.
14
+ *
15
+ * > **Note:** The underlying API method `projects.setIamPolicy` has constraints which are documented [here](https://cloud.google.com/resource-manager/reference/rest/v1/projects/setIamPolicy). In addition to these constraints,
16
+ * IAM Conditions cannot be used with Basic Roles such as Owner. Violating these constraints will result in the API returning a 400 error code so please review these if you encounter errors with this resource.
17
+ *
18
+ * ## google\_folder\_iam\_policy
19
+ *
20
+ * !> **Be careful!** You can accidentally lock yourself out of your folder
21
+ * using this resource. Deleting a `gcp.folder.IAMPolicy` removes access
22
+ * from anyone without permissions on its parent folder/organization. Proceed with caution.
23
+ * It's not recommended to use `gcp.folder.IAMPolicy` with your provider folder
24
+ * to avoid locking yourself out, and it should generally only be used with folders
25
+ * fully managed by this provider. If you do use this resource, it is recommended to **import** the policy before
26
+ * applying the change.
27
+ *
28
+ * ```typescript
29
+ * import * as pulumi from "@pulumi/pulumi";
30
+ * import * as gcp from "@pulumi/gcp";
31
+ *
32
+ * const admin = gcp.organizations.getIAMPolicy({
33
+ * bindings: [{
34
+ * role: "roles/editor",
35
+ * members: ["user:jane@example.com"],
36
+ * }],
37
+ * });
38
+ * const folder = new gcp.folder.IAMPolicy("folder", {
39
+ * folder: "folders/1234567",
40
+ * policyData: admin.then(admin => admin.policyData),
41
+ * });
42
+ * ```
43
+ *
44
+ * With IAM Conditions:
45
+ *
46
+ * ```typescript
47
+ * import * as pulumi from "@pulumi/pulumi";
48
+ * import * as gcp from "@pulumi/gcp";
49
+ *
50
+ * const admin = pulumi.output(gcp.organizations.getIAMPolicy({
51
+ * bindings: [{
52
+ * condition: {
53
+ * description: "Expiring at midnight of 2019-12-31",
54
+ * expression: "request.time < timestamp(\"2020-01-01T00:00:00Z\")",
55
+ * title: "expires_after_2019_12_31",
56
+ * },
57
+ * members: ["user:jane@example.com"],
58
+ * role: "roles/compute.admin",
59
+ * }],
60
+ * }));
61
+ * const folder = new gcp.folder.IAMPolicy("folder", {
62
+ * folder: "folders/1234567",
63
+ * policyData: admin.policyData,
64
+ * });
65
+ * ```
66
+ *
67
+ * ## google\_folder\_iam\_binding
68
+ *
69
+ * ```typescript
70
+ * import * as pulumi from "@pulumi/pulumi";
71
+ * import * as gcp from "@pulumi/gcp";
72
+ *
73
+ * const folder = new gcp.folder.IAMBinding("folder", {
74
+ * folder: "folders/1234567",
75
+ * members: ["user:jane@example.com"],
76
+ * role: "roles/editor",
77
+ * });
78
+ * ```
79
+ *
80
+ * With IAM Conditions:
81
+ *
82
+ * ```typescript
83
+ * import * as pulumi from "@pulumi/pulumi";
84
+ * import * as gcp from "@pulumi/gcp";
85
+ *
86
+ * const folder = new gcp.folder.IAMBinding("folder", {
87
+ * condition: {
88
+ * description: "Expiring at midnight of 2019-12-31",
89
+ * expression: "request.time < timestamp(\"2020-01-01T00:00:00Z\")",
90
+ * title: "expires_after_2019_12_31",
91
+ * },
92
+ * folder: "folders/1234567",
93
+ * members: ["user:jane@example.com"],
94
+ * role: "roles/container.admin",
95
+ * });
96
+ * ```
97
+ *
98
+ * ## google\_folder\_iam\_member
99
+ *
100
+ * ```typescript
101
+ * import * as pulumi from "@pulumi/pulumi";
102
+ * import * as gcp from "@pulumi/gcp";
103
+ *
104
+ * const folder = new gcp.folder.IAMMember("folder", {
105
+ * folder: "folders/1234567",
106
+ * member: "user:jane@example.com",
107
+ * role: "roles/editor",
108
+ * });
109
+ * ```
110
+ *
111
+ * With IAM Conditions:
112
+ *
113
+ * ```typescript
114
+ * import * as pulumi from "@pulumi/pulumi";
115
+ * import * as gcp from "@pulumi/gcp";
116
+ *
117
+ * const folder = new gcp.folder.IAMMember("folder", {
118
+ * condition: {
119
+ * description: "Expiring at midnight of 2019-12-31",
120
+ * expression: "request.time < timestamp(\"2020-01-01T00:00:00Z\")",
121
+ * title: "expires_after_2019_12_31",
122
+ * },
123
+ * folder: "folders/1234567",
124
+ * member: "user:jane@example.com",
125
+ * role: "roles/firebase.admin",
126
+ * });
127
+ * ```
128
+ *
129
+ * ## google\_folder\_iam\_audit\_config
130
+ *
131
+ * ```typescript
132
+ * import * as pulumi from "@pulumi/pulumi";
133
+ * import * as gcp from "@pulumi/gcp";
134
+ *
135
+ * const folder = new gcp.folder.IamAuditConfig("folder", {
136
+ * auditLogConfigs: [
137
+ * {
138
+ * logType: "ADMIN_READ",
139
+ * },
140
+ * {
141
+ * exemptedMembers: ["user:joebloggs@hashicorp.com"],
142
+ * logType: "DATA_READ",
143
+ * },
144
+ * ],
145
+ * folder: "folders/1234567",
146
+ * service: "allServices",
147
+ * });
148
+ * ```
149
+ *
150
+ * ## Import
151
+ *
152
+ * IAM member imports use space-delimited identifiers; the resource in question, the role, and the account.
153
+ *
154
+ * This member resource can be imported using the `folder`, role, and member e.g.
155
+ *
156
+ * ```sh
157
+ * $ pulumi import gcp:folder/iAMMember:IAMMember my_folder "folder roles/viewer user:foo@example.com"
158
+ * ```
159
+ *
160
+ * IAM binding imports use space-delimited identifiers; the resource in question and the role.
161
+ *
162
+ * This binding resource can be imported using the `folder` and role, e.g.
163
+ *
164
+ * ```sh
165
+ * $ pulumi import gcp:folder/iAMMember:IAMMember my_folder "folder roles/viewer"
166
+ * ```
167
+ *
168
+ * IAM policy imports use the identifier of the resource in question.
169
+ *
170
+ * This policy resource can be imported using the `folder`.
171
+ *
172
+ * ```sh
173
+ * $ pulumi import gcp:folder/iAMMember:IAMMember my_folder folder
174
+ * ```
175
+ *
176
+ * IAM audit config imports use the identifier of the resource in question and the service, e.g.
177
+ *
178
+ * ```sh
179
+ * $ pulumi import gcp:folder/iAMMember:IAMMember my_folder "folder foo.googleapis.com"
180
+ * ```
181
+ *
182
+ * -> **Custom Roles**If you're importing a IAM resource with a custom role, make sure to use the
183
+ *
184
+ * full name of the custom role, e.g. `organizations/{{org_id}}/roles/{{role_id}}`.
185
+ */
3
186
  export declare class IAMMember extends pulumi.CustomResource {
4
187
  /**
5
188
  * Get an existing IAMMember resource's state with the given name, ID, and optional extra
@@ -16,10 +199,25 @@ export declare class IAMMember extends pulumi.CustomResource {
16
199
  * when multiple copies of the Pulumi SDK have been loaded into the same process.
17
200
  */
18
201
  static isInstance(obj: any): obj is IAMMember;
202
+ /**
203
+ * An [IAM Condition](https://cloud.google.com/iam/docs/conditions-overview) for a given binding.
204
+ * Structure is documented below.
205
+ */
19
206
  readonly condition: pulumi.Output<outputs.folder.IAMMemberCondition | undefined>;
207
+ /**
208
+ * (Computed) The etag of the folder's IAM policy.
209
+ */
20
210
  readonly etag: pulumi.Output<string>;
211
+ /**
212
+ * The resource name of the folder the policy is attached to. Its format is folders/{folder_id}.
213
+ */
21
214
  readonly folder: pulumi.Output<string>;
22
215
  readonly member: pulumi.Output<string>;
216
+ /**
217
+ * The role that should be applied. Only one
218
+ * `gcp.folder.IAMBinding` can be used per role. Note that custom roles must be of the format
219
+ * `organizations/{{org_id}}/roles/{{role_id}}`.
220
+ */
23
221
  readonly role: pulumi.Output<string>;
24
222
  /**
25
223
  * Create a IAMMember resource with the given unique name, arguments, and options.
@@ -34,18 +232,45 @@ export declare class IAMMember extends pulumi.CustomResource {
34
232
  * Input properties used for looking up and filtering IAMMember resources.
35
233
  */
36
234
  export interface IAMMemberState {
235
+ /**
236
+ * An [IAM Condition](https://cloud.google.com/iam/docs/conditions-overview) for a given binding.
237
+ * Structure is documented below.
238
+ */
37
239
  condition?: pulumi.Input<inputs.folder.IAMMemberCondition>;
240
+ /**
241
+ * (Computed) The etag of the folder's IAM policy.
242
+ */
38
243
  etag?: pulumi.Input<string>;
244
+ /**
245
+ * The resource name of the folder the policy is attached to. Its format is folders/{folder_id}.
246
+ */
39
247
  folder?: pulumi.Input<string>;
40
248
  member?: pulumi.Input<string>;
249
+ /**
250
+ * The role that should be applied. Only one
251
+ * `gcp.folder.IAMBinding` can be used per role. Note that custom roles must be of the format
252
+ * `organizations/{{org_id}}/roles/{{role_id}}`.
253
+ */
41
254
  role?: pulumi.Input<string>;
42
255
  }
43
256
  /**
44
257
  * The set of arguments for constructing a IAMMember resource.
45
258
  */
46
259
  export interface IAMMemberArgs {
260
+ /**
261
+ * An [IAM Condition](https://cloud.google.com/iam/docs/conditions-overview) for a given binding.
262
+ * Structure is documented below.
263
+ */
47
264
  condition?: pulumi.Input<inputs.folder.IAMMemberCondition>;
265
+ /**
266
+ * The resource name of the folder the policy is attached to. Its format is folders/{folder_id}.
267
+ */
48
268
  folder: pulumi.Input<string>;
49
269
  member: pulumi.Input<string>;
270
+ /**
271
+ * The role that should be applied. Only one
272
+ * `gcp.folder.IAMBinding` can be used per role. Note that custom roles must be of the format
273
+ * `organizations/{{org_id}}/roles/{{role_id}}`.
274
+ */
50
275
  role: pulumi.Input<string>;
51
276
  }
@@ -5,6 +5,189 @@ Object.defineProperty(exports, "__esModule", { value: true });
5
5
  exports.IAMMember = void 0;
6
6
  const pulumi = require("@pulumi/pulumi");
7
7
  const utilities = require("../utilities");
8
+ /**
9
+ * Four different resources help you manage your IAM policy for a folder. Each of these resources serves a different use case:
10
+ *
11
+ * * `gcp.folder.IAMPolicy`: Authoritative. Sets the IAM policy for the folder and replaces any existing policy already attached.
12
+ * * `gcp.folder.IAMBinding`: Authoritative for a given role. Updates the IAM policy to grant a role to a list of members. Other roles within the IAM policy for the folder are preserved.
13
+ * * `gcp.folder.IAMMember`: Non-authoritative. Updates the IAM policy to grant a role to a new member. Other members for the role for the folder are preserved.
14
+ * * `gcp.folder.IamAuditConfig`: Authoritative for a given service. Updates the IAM policy to enable audit logging for the given service.
15
+ *
16
+ * > **Note:** `gcp.folder.IAMPolicy` **cannot** be used in conjunction with `gcp.folder.IAMBinding`, `gcp.folder.IAMMember`, or `gcp.folder.IamAuditConfig` or they will fight over what your policy should be.
17
+ *
18
+ * > **Note:** `gcp.folder.IAMBinding` resources **can be** used in conjunction with `gcp.folder.IAMMember` resources **only if** they do not grant privilege to the same role.
19
+ *
20
+ * > **Note:** The underlying API method `projects.setIamPolicy` has constraints which are documented [here](https://cloud.google.com/resource-manager/reference/rest/v1/projects/setIamPolicy). In addition to these constraints,
21
+ * IAM Conditions cannot be used with Basic Roles such as Owner. Violating these constraints will result in the API returning a 400 error code so please review these if you encounter errors with this resource.
22
+ *
23
+ * ## google\_folder\_iam\_policy
24
+ *
25
+ * !> **Be careful!** You can accidentally lock yourself out of your folder
26
+ * using this resource. Deleting a `gcp.folder.IAMPolicy` removes access
27
+ * from anyone without permissions on its parent folder/organization. Proceed with caution.
28
+ * It's not recommended to use `gcp.folder.IAMPolicy` with your provider folder
29
+ * to avoid locking yourself out, and it should generally only be used with folders
30
+ * fully managed by this provider. If you do use this resource, it is recommended to **import** the policy before
31
+ * applying the change.
32
+ *
33
+ * ```typescript
34
+ * import * as pulumi from "@pulumi/pulumi";
35
+ * import * as gcp from "@pulumi/gcp";
36
+ *
37
+ * const admin = gcp.organizations.getIAMPolicy({
38
+ * bindings: [{
39
+ * role: "roles/editor",
40
+ * members: ["user:jane@example.com"],
41
+ * }],
42
+ * });
43
+ * const folder = new gcp.folder.IAMPolicy("folder", {
44
+ * folder: "folders/1234567",
45
+ * policyData: admin.then(admin => admin.policyData),
46
+ * });
47
+ * ```
48
+ *
49
+ * With IAM Conditions:
50
+ *
51
+ * ```typescript
52
+ * import * as pulumi from "@pulumi/pulumi";
53
+ * import * as gcp from "@pulumi/gcp";
54
+ *
55
+ * const admin = pulumi.output(gcp.organizations.getIAMPolicy({
56
+ * bindings: [{
57
+ * condition: {
58
+ * description: "Expiring at midnight of 2019-12-31",
59
+ * expression: "request.time < timestamp(\"2020-01-01T00:00:00Z\")",
60
+ * title: "expires_after_2019_12_31",
61
+ * },
62
+ * members: ["user:jane@example.com"],
63
+ * role: "roles/compute.admin",
64
+ * }],
65
+ * }));
66
+ * const folder = new gcp.folder.IAMPolicy("folder", {
67
+ * folder: "folders/1234567",
68
+ * policyData: admin.policyData,
69
+ * });
70
+ * ```
71
+ *
72
+ * ## google\_folder\_iam\_binding
73
+ *
74
+ * ```typescript
75
+ * import * as pulumi from "@pulumi/pulumi";
76
+ * import * as gcp from "@pulumi/gcp";
77
+ *
78
+ * const folder = new gcp.folder.IAMBinding("folder", {
79
+ * folder: "folders/1234567",
80
+ * members: ["user:jane@example.com"],
81
+ * role: "roles/editor",
82
+ * });
83
+ * ```
84
+ *
85
+ * With IAM Conditions:
86
+ *
87
+ * ```typescript
88
+ * import * as pulumi from "@pulumi/pulumi";
89
+ * import * as gcp from "@pulumi/gcp";
90
+ *
91
+ * const folder = new gcp.folder.IAMBinding("folder", {
92
+ * condition: {
93
+ * description: "Expiring at midnight of 2019-12-31",
94
+ * expression: "request.time < timestamp(\"2020-01-01T00:00:00Z\")",
95
+ * title: "expires_after_2019_12_31",
96
+ * },
97
+ * folder: "folders/1234567",
98
+ * members: ["user:jane@example.com"],
99
+ * role: "roles/container.admin",
100
+ * });
101
+ * ```
102
+ *
103
+ * ## google\_folder\_iam\_member
104
+ *
105
+ * ```typescript
106
+ * import * as pulumi from "@pulumi/pulumi";
107
+ * import * as gcp from "@pulumi/gcp";
108
+ *
109
+ * const folder = new gcp.folder.IAMMember("folder", {
110
+ * folder: "folders/1234567",
111
+ * member: "user:jane@example.com",
112
+ * role: "roles/editor",
113
+ * });
114
+ * ```
115
+ *
116
+ * With IAM Conditions:
117
+ *
118
+ * ```typescript
119
+ * import * as pulumi from "@pulumi/pulumi";
120
+ * import * as gcp from "@pulumi/gcp";
121
+ *
122
+ * const folder = new gcp.folder.IAMMember("folder", {
123
+ * condition: {
124
+ * description: "Expiring at midnight of 2019-12-31",
125
+ * expression: "request.time < timestamp(\"2020-01-01T00:00:00Z\")",
126
+ * title: "expires_after_2019_12_31",
127
+ * },
128
+ * folder: "folders/1234567",
129
+ * member: "user:jane@example.com",
130
+ * role: "roles/firebase.admin",
131
+ * });
132
+ * ```
133
+ *
134
+ * ## google\_folder\_iam\_audit\_config
135
+ *
136
+ * ```typescript
137
+ * import * as pulumi from "@pulumi/pulumi";
138
+ * import * as gcp from "@pulumi/gcp";
139
+ *
140
+ * const folder = new gcp.folder.IamAuditConfig("folder", {
141
+ * auditLogConfigs: [
142
+ * {
143
+ * logType: "ADMIN_READ",
144
+ * },
145
+ * {
146
+ * exemptedMembers: ["user:joebloggs@hashicorp.com"],
147
+ * logType: "DATA_READ",
148
+ * },
149
+ * ],
150
+ * folder: "folders/1234567",
151
+ * service: "allServices",
152
+ * });
153
+ * ```
154
+ *
155
+ * ## Import
156
+ *
157
+ * IAM member imports use space-delimited identifiers; the resource in question, the role, and the account.
158
+ *
159
+ * This member resource can be imported using the `folder`, role, and member e.g.
160
+ *
161
+ * ```sh
162
+ * $ pulumi import gcp:folder/iAMMember:IAMMember my_folder "folder roles/viewer user:foo@example.com"
163
+ * ```
164
+ *
165
+ * IAM binding imports use space-delimited identifiers; the resource in question and the role.
166
+ *
167
+ * This binding resource can be imported using the `folder` and role, e.g.
168
+ *
169
+ * ```sh
170
+ * $ pulumi import gcp:folder/iAMMember:IAMMember my_folder "folder roles/viewer"
171
+ * ```
172
+ *
173
+ * IAM policy imports use the identifier of the resource in question.
174
+ *
175
+ * This policy resource can be imported using the `folder`.
176
+ *
177
+ * ```sh
178
+ * $ pulumi import gcp:folder/iAMMember:IAMMember my_folder folder
179
+ * ```
180
+ *
181
+ * IAM audit config imports use the identifier of the resource in question and the service, e.g.
182
+ *
183
+ * ```sh
184
+ * $ pulumi import gcp:folder/iAMMember:IAMMember my_folder "folder foo.googleapis.com"
185
+ * ```
186
+ *
187
+ * -> **Custom Roles**If you're importing a IAM resource with a custom role, make sure to use the
188
+ *
189
+ * full name of the custom role, e.g. `organizations/{{org_id}}/roles/{{role_id}}`.
190
+ */
8
191
  class IAMMember extends pulumi.CustomResource {
9
192
  constructor(name, argsOrState, opts) {
10
193
  let resourceInputs = {};
@@ -1 +1 @@
1
- {"version":3,"file":"iammember.js","sourceRoot":"","sources":["../../folder/iammember.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"iammember.js","sourceRoot":"","sources":["../../folder/iammember.ts"],"names":[],"mappings":"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"}