@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/iamAuditConfig:IamAuditConfig 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/iamAuditConfig:IamAuditConfig 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/iamAuditConfig:IamAuditConfig 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/iamAuditConfig:IamAuditConfig 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 IamAuditConfig extends pulumi.CustomResource {
4
187
  /**
5
188
  * Get an existing IamAuditConfig resource's state with the given name, ID, and optional extra
@@ -17,16 +200,19 @@ export declare class IamAuditConfig extends pulumi.CustomResource {
17
200
  */
18
201
  static isInstance(obj: any): obj is IamAuditConfig;
19
202
  /**
20
- * The configuration for logging of each type of permission. This can be specified multiple times.
203
+ * The configuration for logging of each type of permission. This can be specified multiple times. Structure is documented below.
21
204
  */
22
205
  readonly auditLogConfigs: pulumi.Output<outputs.folder.IamAuditConfigAuditLogConfig[]>;
23
206
  /**
24
- * The etag of iam policy
207
+ * (Computed) The etag of the folder's IAM policy.
25
208
  */
26
209
  readonly etag: pulumi.Output<string>;
210
+ /**
211
+ * The resource name of the folder the policy is attached to. Its format is folders/{folder_id}.
212
+ */
27
213
  readonly folder: pulumi.Output<string>;
28
214
  /**
29
- * Service which will be enabled for audit logging. The special value allServices covers all services.
215
+ * Service which will be enabled for audit logging. The special value `allServices` covers all services. Note that if there are google\_folder\_iam\_audit\_config resources covering both `allServices` and a specific service then the union of the two AuditConfigs is used for that service: the `logTypes` specified in each `auditLogConfig` are enabled, and the `exemptedMembers` in each `auditLogConfig` are exempted.
30
216
  */
31
217
  readonly service: pulumi.Output<string>;
32
218
  /**
@@ -43,16 +229,19 @@ export declare class IamAuditConfig extends pulumi.CustomResource {
43
229
  */
44
230
  export interface IamAuditConfigState {
45
231
  /**
46
- * The configuration for logging of each type of permission. This can be specified multiple times.
232
+ * The configuration for logging of each type of permission. This can be specified multiple times. Structure is documented below.
47
233
  */
48
234
  auditLogConfigs?: pulumi.Input<pulumi.Input<inputs.folder.IamAuditConfigAuditLogConfig>[]>;
49
235
  /**
50
- * The etag of iam policy
236
+ * (Computed) The etag of the folder's IAM policy.
51
237
  */
52
238
  etag?: pulumi.Input<string>;
239
+ /**
240
+ * The resource name of the folder the policy is attached to. Its format is folders/{folder_id}.
241
+ */
53
242
  folder?: pulumi.Input<string>;
54
243
  /**
55
- * Service which will be enabled for audit logging. The special value allServices covers all services.
244
+ * Service which will be enabled for audit logging. The special value `allServices` covers all services. Note that if there are google\_folder\_iam\_audit\_config resources covering both `allServices` and a specific service then the union of the two AuditConfigs is used for that service: the `logTypes` specified in each `auditLogConfig` are enabled, and the `exemptedMembers` in each `auditLogConfig` are exempted.
56
245
  */
57
246
  service?: pulumi.Input<string>;
58
247
  }
@@ -61,12 +250,15 @@ export interface IamAuditConfigState {
61
250
  */
62
251
  export interface IamAuditConfigArgs {
63
252
  /**
64
- * The configuration for logging of each type of permission. This can be specified multiple times.
253
+ * The configuration for logging of each type of permission. This can be specified multiple times. Structure is documented below.
65
254
  */
66
255
  auditLogConfigs: pulumi.Input<pulumi.Input<inputs.folder.IamAuditConfigAuditLogConfig>[]>;
256
+ /**
257
+ * The resource name of the folder the policy is attached to. Its format is folders/{folder_id}.
258
+ */
67
259
  folder: pulumi.Input<string>;
68
260
  /**
69
- * Service which will be enabled for audit logging. The special value allServices covers all services.
261
+ * Service which will be enabled for audit logging. The special value `allServices` covers all services. Note that if there are google\_folder\_iam\_audit\_config resources covering both `allServices` and a specific service then the union of the two AuditConfigs is used for that service: the `logTypes` specified in each `auditLogConfig` are enabled, and the `exemptedMembers` in each `auditLogConfig` are exempted.
70
262
  */
71
263
  service: pulumi.Input<string>;
72
264
  }
@@ -5,6 +5,189 @@ Object.defineProperty(exports, "__esModule", { value: true });
5
5
  exports.IamAuditConfig = 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/iamAuditConfig:IamAuditConfig 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/iamAuditConfig:IamAuditConfig 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/iamAuditConfig:IamAuditConfig 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/iamAuditConfig:IamAuditConfig 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 IamAuditConfig extends pulumi.CustomResource {
9
192
  constructor(name, argsOrState, opts) {
10
193
  let resourceInputs = {};
@@ -1 +1 @@
1
- {"version":3,"file":"iamAuditConfig.js","sourceRoot":"","sources":["../../folder/iamAuditConfig.ts"],"names":[],"mappings":";AAAA,wFAAwF;AACxF,iFAAiF;;;AAEjF,yCAAyC;AAEzC,0CAA0C;AAE1C,MAAa,cAAe,SAAQ,MAAM,CAAC,cAAc;IAkDrD,YAAY,IAAY,EAAE,WAAsD,EAAE,IAAmC;QACjH,IAAI,cAAc,GAAkB,EAAE,CAAC;QACvC,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;QAClB,IAAI,IAAI,CAAC,EAAE,EAAE;YACT,MAAM,KAAK,GAAG,WAA8C,CAAC;YAC7D,cAAc,CAAC,iBAAiB,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC,CAAC,SAAS,CAAC;YAC9E,cAAc,CAAC,MAAM,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;YACxD,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;SACjE;aAAM;YACH,MAAM,IAAI,GAAG,WAA6C,CAAC;YAC3D,IAAI,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,eAAe,KAAK,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;gBAC5D,MAAM,IAAI,KAAK,CAAC,6CAA6C,CAAC,CAAC;aAClE;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,OAAO,KAAK,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;gBACpD,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC;aAC1D;YACD,cAAc,CAAC,iBAAiB,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,SAAS,CAAC;YAC5E,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,SAAS,CAAC,OAAO,CAAC;SAC9C;QACD,IAAI,GAAG,MAAM,CAAC,YAAY,CAAC,SAAS,CAAC,oBAAoB,EAAE,EAAE,IAAI,CAAC,CAAC;QACnE,KAAK,CAAC,cAAc,CAAC,YAAY,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,CAAC,CAAC;IACnE,CAAC;IA5ED;;;;;;;;OAQG;IACI,MAAM,CAAC,GAAG,CAAC,IAAY,EAAE,EAA2B,EAAE,KAA2B,EAAE,IAAmC;QACzH,OAAO,IAAI,cAAc,CAAC,IAAI,EAAO,KAAK,kCAAO,IAAI,KAAE,EAAE,EAAE,EAAE,IAAG,CAAC;IACrE,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,cAAc,CAAC,YAAY,CAAC;IAC/D,CAAC;;AA1BL,wCA8EC;AAhEG,gBAAgB;AACO,2BAAY,GAAG,0CAA0C,CAAC"}
1
+ {"version":3,"file":"iamAuditConfig.js","sourceRoot":"","sources":["../../folder/iamAuditConfig.ts"],"names":[],"mappings":"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"}