pulumi-cloudinit 1.4.0a1704346182__py3-none-any.whl → 1.5.0a1704428144__py3-none-any.whl

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.
@@ -21,6 +21,12 @@ class ConfigPartArgs:
21
21
  content_type: Optional[pulumi.Input[str]] = None,
22
22
  filename: Optional[pulumi.Input[str]] = None,
23
23
  merge_type: Optional[pulumi.Input[str]] = None):
24
+ """
25
+ :param pulumi.Input[str] content: Body content for the part.
26
+ :param pulumi.Input[str] content_type: A MIME-style content type to report in the header for the part. Defaults to `text/plain`
27
+ :param pulumi.Input[str] filename: A filename to report in the header for the part.
28
+ :param pulumi.Input[str] merge_type: A value for the `X-Merge-Type` header of the part, to control [cloud-init merging behavior](https://cloudinit.readthedocs.io/en/latest/reference/merging.html).
29
+ """
24
30
  pulumi.set(__self__, "content", content)
25
31
  if content_type is not None:
26
32
  pulumi.set(__self__, "content_type", content_type)
@@ -32,6 +38,9 @@ class ConfigPartArgs:
32
38
  @property
33
39
  @pulumi.getter
34
40
  def content(self) -> pulumi.Input[str]:
41
+ """
42
+ Body content for the part.
43
+ """
35
44
  return pulumi.get(self, "content")
36
45
 
37
46
  @content.setter
@@ -41,6 +50,9 @@ class ConfigPartArgs:
41
50
  @property
42
51
  @pulumi.getter(name="contentType")
43
52
  def content_type(self) -> Optional[pulumi.Input[str]]:
53
+ """
54
+ A MIME-style content type to report in the header for the part. Defaults to `text/plain`
55
+ """
44
56
  return pulumi.get(self, "content_type")
45
57
 
46
58
  @content_type.setter
@@ -50,6 +62,9 @@ class ConfigPartArgs:
50
62
  @property
51
63
  @pulumi.getter
52
64
  def filename(self) -> Optional[pulumi.Input[str]]:
65
+ """
66
+ A filename to report in the header for the part.
67
+ """
53
68
  return pulumi.get(self, "filename")
54
69
 
55
70
  @filename.setter
@@ -59,6 +74,9 @@ class ConfigPartArgs:
59
74
  @property
60
75
  @pulumi.getter(name="mergeType")
61
76
  def merge_type(self) -> Optional[pulumi.Input[str]]:
77
+ """
78
+ A value for the `X-Merge-Type` header of the part, to control [cloud-init merging behavior](https://cloudinit.readthedocs.io/en/latest/reference/merging.html).
79
+ """
62
80
  return pulumi.get(self, "merge_type")
63
81
 
64
82
  @merge_type.setter
@@ -70,19 +88,17 @@ class ConfigPartArgs:
70
88
  class GetConfigPartArgs:
71
89
  def __init__(__self__, *,
72
90
  content: str,
73
- content_type: Optional[str] = None,
91
+ content_type: str,
74
92
  filename: Optional[str] = None,
75
93
  merge_type: Optional[str] = None):
76
94
  """
77
95
  :param str content: Body content for the part.
78
- :param str content_type: A MIME-style content type to report in the header for the part.
96
+ :param str content_type: A MIME-style content type to report in the header for the part. Defaults to `text/plain`
79
97
  :param str filename: A filename to report in the header for the part.
80
- :param str merge_type: A value for the `X-Merge-Type` header of the part,
81
- to control [cloud-init merging behavior](https://cloudinit.readthedocs.io/en/latest/topics/merging.html).
98
+ :param str merge_type: A value for the `X-Merge-Type` header of the part, to control [cloud-init merging behavior](https://cloudinit.readthedocs.io/en/latest/reference/merging.html).
82
99
  """
83
100
  pulumi.set(__self__, "content", content)
84
- if content_type is not None:
85
- pulumi.set(__self__, "content_type", content_type)
101
+ pulumi.set(__self__, "content_type", content_type)
86
102
  if filename is not None:
87
103
  pulumi.set(__self__, "filename", filename)
88
104
  if merge_type is not None:
@@ -102,14 +118,14 @@ class GetConfigPartArgs:
102
118
 
103
119
  @property
104
120
  @pulumi.getter(name="contentType")
105
- def content_type(self) -> Optional[str]:
121
+ def content_type(self) -> str:
106
122
  """
107
- A MIME-style content type to report in the header for the part.
123
+ A MIME-style content type to report in the header for the part. Defaults to `text/plain`
108
124
  """
109
125
  return pulumi.get(self, "content_type")
110
126
 
111
127
  @content_type.setter
112
- def content_type(self, value: Optional[str]):
128
+ def content_type(self, value: str):
113
129
  pulumi.set(self, "content_type", value)
114
130
 
115
131
  @property
@@ -128,8 +144,7 @@ class GetConfigPartArgs:
128
144
  @pulumi.getter(name="mergeType")
129
145
  def merge_type(self) -> Optional[str]:
130
146
  """
131
- A value for the `X-Merge-Type` header of the part,
132
- to control [cloud-init merging behavior](https://cloudinit.readthedocs.io/en/latest/topics/merging.html).
147
+ A value for the `X-Merge-Type` header of the part, to control [cloud-init merging behavior](https://cloudinit.readthedocs.io/en/latest/reference/merging.html).
133
148
  """
134
149
  return pulumi.get(self, "merge_type")
135
150
 
@@ -16,33 +16,32 @@ __all__ = ['ConfigArgs', 'Config']
16
16
  @pulumi.input_type
17
17
  class ConfigArgs:
18
18
  def __init__(__self__, *,
19
- parts: pulumi.Input[Sequence[pulumi.Input['ConfigPartArgs']]],
20
19
  base64_encode: Optional[pulumi.Input[bool]] = None,
21
20
  boundary: Optional[pulumi.Input[str]] = None,
22
- gzip: Optional[pulumi.Input[bool]] = None):
21
+ gzip: Optional[pulumi.Input[bool]] = None,
22
+ parts: Optional[pulumi.Input[Sequence[pulumi.Input['ConfigPartArgs']]]] = None):
23
23
  """
24
24
  The set of arguments for constructing a Config resource.
25
+ :param pulumi.Input[bool] base64_encode: Specify whether or not to base64 encode the `rendered` output. Defaults to `true`, and cannot be disabled if gzip is `true`.
26
+ :param pulumi.Input[str] boundary: Specify the Writer's default boundary separator. Defaults to `MIMEBOUNDARY`.
27
+ :param pulumi.Input[bool] gzip: Specify whether or not to gzip the `rendered` output. Defaults to `true`.
28
+ :param pulumi.Input[Sequence[pulumi.Input['ConfigPartArgs']]] parts: A nested block type which adds a file to the generated cloud-init configuration. Use multiple `part` blocks to specify multiple files, which will be included in order of declaration in the final MIME document.
25
29
  """
26
- pulumi.set(__self__, "parts", parts)
27
30
  if base64_encode is not None:
28
31
  pulumi.set(__self__, "base64_encode", base64_encode)
29
32
  if boundary is not None:
30
33
  pulumi.set(__self__, "boundary", boundary)
31
34
  if gzip is not None:
32
35
  pulumi.set(__self__, "gzip", gzip)
33
-
34
- @property
35
- @pulumi.getter
36
- def parts(self) -> pulumi.Input[Sequence[pulumi.Input['ConfigPartArgs']]]:
37
- return pulumi.get(self, "parts")
38
-
39
- @parts.setter
40
- def parts(self, value: pulumi.Input[Sequence[pulumi.Input['ConfigPartArgs']]]):
41
- pulumi.set(self, "parts", value)
36
+ if parts is not None:
37
+ pulumi.set(__self__, "parts", parts)
42
38
 
43
39
  @property
44
40
  @pulumi.getter(name="base64Encode")
45
41
  def base64_encode(self) -> Optional[pulumi.Input[bool]]:
42
+ """
43
+ Specify whether or not to base64 encode the `rendered` output. Defaults to `true`, and cannot be disabled if gzip is `true`.
44
+ """
46
45
  return pulumi.get(self, "base64_encode")
47
46
 
48
47
  @base64_encode.setter
@@ -52,6 +51,9 @@ class ConfigArgs:
52
51
  @property
53
52
  @pulumi.getter
54
53
  def boundary(self) -> Optional[pulumi.Input[str]]:
54
+ """
55
+ Specify the Writer's default boundary separator. Defaults to `MIMEBOUNDARY`.
56
+ """
55
57
  return pulumi.get(self, "boundary")
56
58
 
57
59
  @boundary.setter
@@ -61,12 +63,27 @@ class ConfigArgs:
61
63
  @property
62
64
  @pulumi.getter
63
65
  def gzip(self) -> Optional[pulumi.Input[bool]]:
66
+ """
67
+ Specify whether or not to gzip the `rendered` output. Defaults to `true`.
68
+ """
64
69
  return pulumi.get(self, "gzip")
65
70
 
66
71
  @gzip.setter
67
72
  def gzip(self, value: Optional[pulumi.Input[bool]]):
68
73
  pulumi.set(self, "gzip", value)
69
74
 
75
+ @property
76
+ @pulumi.getter
77
+ def parts(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ConfigPartArgs']]]]:
78
+ """
79
+ A nested block type which adds a file to the generated cloud-init configuration. Use multiple `part` blocks to specify multiple files, which will be included in order of declaration in the final MIME document.
80
+ """
81
+ return pulumi.get(self, "parts")
82
+
83
+ @parts.setter
84
+ def parts(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ConfigPartArgs']]]]):
85
+ pulumi.set(self, "parts", value)
86
+
70
87
 
71
88
  @pulumi.input_type
72
89
  class _ConfigState:
@@ -78,7 +95,11 @@ class _ConfigState:
78
95
  rendered: Optional[pulumi.Input[str]] = None):
79
96
  """
80
97
  Input properties used for looking up and filtering Config resources.
81
- :param pulumi.Input[str] rendered: rendered cloudinit configuration
98
+ :param pulumi.Input[bool] base64_encode: Specify whether or not to base64 encode the `rendered` output. Defaults to `true`, and cannot be disabled if gzip is `true`.
99
+ :param pulumi.Input[str] boundary: Specify the Writer's default boundary separator. Defaults to `MIMEBOUNDARY`.
100
+ :param pulumi.Input[bool] gzip: Specify whether or not to gzip the `rendered` output. Defaults to `true`.
101
+ :param pulumi.Input[Sequence[pulumi.Input['ConfigPartArgs']]] parts: A nested block type which adds a file to the generated cloud-init configuration. Use multiple `part` blocks to specify multiple files, which will be included in order of declaration in the final MIME document.
102
+ :param pulumi.Input[str] rendered: The final rendered multi-part cloud-init config.
82
103
  """
83
104
  if base64_encode is not None:
84
105
  pulumi.set(__self__, "base64_encode", base64_encode)
@@ -94,6 +115,9 @@ class _ConfigState:
94
115
  @property
95
116
  @pulumi.getter(name="base64Encode")
96
117
  def base64_encode(self) -> Optional[pulumi.Input[bool]]:
118
+ """
119
+ Specify whether or not to base64 encode the `rendered` output. Defaults to `true`, and cannot be disabled if gzip is `true`.
120
+ """
97
121
  return pulumi.get(self, "base64_encode")
98
122
 
99
123
  @base64_encode.setter
@@ -103,6 +127,9 @@ class _ConfigState:
103
127
  @property
104
128
  @pulumi.getter
105
129
  def boundary(self) -> Optional[pulumi.Input[str]]:
130
+ """
131
+ Specify the Writer's default boundary separator. Defaults to `MIMEBOUNDARY`.
132
+ """
106
133
  return pulumi.get(self, "boundary")
107
134
 
108
135
  @boundary.setter
@@ -112,6 +139,9 @@ class _ConfigState:
112
139
  @property
113
140
  @pulumi.getter
114
141
  def gzip(self) -> Optional[pulumi.Input[bool]]:
142
+ """
143
+ Specify whether or not to gzip the `rendered` output. Defaults to `true`.
144
+ """
115
145
  return pulumi.get(self, "gzip")
116
146
 
117
147
  @gzip.setter
@@ -121,6 +151,9 @@ class _ConfigState:
121
151
  @property
122
152
  @pulumi.getter
123
153
  def parts(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ConfigPartArgs']]]]:
154
+ """
155
+ A nested block type which adds a file to the generated cloud-init configuration. Use multiple `part` blocks to specify multiple files, which will be included in order of declaration in the final MIME document.
156
+ """
124
157
  return pulumi.get(self, "parts")
125
158
 
126
159
  @parts.setter
@@ -131,7 +164,7 @@ class _ConfigState:
131
164
  @pulumi.getter
132
165
  def rendered(self) -> Optional[pulumi.Input[str]]:
133
166
  """
134
- rendered cloudinit configuration
167
+ The final rendered multi-part cloud-init config.
135
168
  """
136
169
  return pulumi.get(self, "rendered")
137
170
 
@@ -140,14 +173,7 @@ class _ConfigState:
140
173
  pulumi.set(self, "rendered", value)
141
174
 
142
175
 
143
- warnings.warn("""This resource is deprecated.
144
- Please use the getConfig data source instead.""", DeprecationWarning)
145
-
146
-
147
176
  class Config(pulumi.CustomResource):
148
- warnings.warn("""This resource is deprecated.
149
- Please use the getConfig data source instead.""", DeprecationWarning)
150
-
151
177
  @overload
152
178
  def __init__(__self__,
153
179
  resource_name: str,
@@ -158,18 +184,58 @@ Please use the getConfig data source instead.""", DeprecationWarning)
158
184
  parts: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ConfigPartArgs']]]]] = None,
159
185
  __props__=None):
160
186
  """
161
- Create a Config resource with the given unique name, props, and options.
187
+ > **This resource is deprecated** Please use the Config
188
+ data source instead.
189
+
190
+ Renders a [multi-part MIME configuration](https://cloudinit.readthedocs.io/en/latest/explanation/format.html#mime-multi-part-archive) for use with [cloud-init](https://cloudinit.readthedocs.io/en/latest/).
191
+
192
+ Cloud-init is a commonly-used startup configuration utility for cloud compute instances. It accepts configuration via provider-specific user data mechanisms, such as `user_data` for Amazon EC2 instances. Multi-part MIME is one of the data formats it accepts. For more information, see [User-Data Formats](https://cloudinit.readthedocs.io/en/latest/explanation/format.html) in the cloud-init manual.
193
+
194
+ This is not a generalized utility for producing multi-part MIME messages. It's feature set is specialized for cloud-init multi-part MIME messages.
195
+
196
+ ## Example Usage
197
+
198
+ ### Config
199
+
200
+ ### hello-script.sh
201
+
202
+ ### cloud-config.yaml
203
+
204
+ <!-- This schema was originally generated with tfplugindocs, then modified manually to ensure `part` block list is noted as Required -->
205
+
162
206
  :param str resource_name: The name of the resource.
163
207
  :param pulumi.ResourceOptions opts: Options for the resource.
208
+ :param pulumi.Input[bool] base64_encode: Specify whether or not to base64 encode the `rendered` output. Defaults to `true`, and cannot be disabled if gzip is `true`.
209
+ :param pulumi.Input[str] boundary: Specify the Writer's default boundary separator. Defaults to `MIMEBOUNDARY`.
210
+ :param pulumi.Input[bool] gzip: Specify whether or not to gzip the `rendered` output. Defaults to `true`.
211
+ :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ConfigPartArgs']]]] parts: A nested block type which adds a file to the generated cloud-init configuration. Use multiple `part` blocks to specify multiple files, which will be included in order of declaration in the final MIME document.
164
212
  """
165
213
  ...
166
214
  @overload
167
215
  def __init__(__self__,
168
216
  resource_name: str,
169
- args: ConfigArgs,
217
+ args: Optional[ConfigArgs] = None,
170
218
  opts: Optional[pulumi.ResourceOptions] = None):
171
219
  """
172
- Create a Config resource with the given unique name, props, and options.
220
+ > **This resource is deprecated** Please use the Config
221
+ data source instead.
222
+
223
+ Renders a [multi-part MIME configuration](https://cloudinit.readthedocs.io/en/latest/explanation/format.html#mime-multi-part-archive) for use with [cloud-init](https://cloudinit.readthedocs.io/en/latest/).
224
+
225
+ Cloud-init is a commonly-used startup configuration utility for cloud compute instances. It accepts configuration via provider-specific user data mechanisms, such as `user_data` for Amazon EC2 instances. Multi-part MIME is one of the data formats it accepts. For more information, see [User-Data Formats](https://cloudinit.readthedocs.io/en/latest/explanation/format.html) in the cloud-init manual.
226
+
227
+ This is not a generalized utility for producing multi-part MIME messages. It's feature set is specialized for cloud-init multi-part MIME messages.
228
+
229
+ ## Example Usage
230
+
231
+ ### Config
232
+
233
+ ### hello-script.sh
234
+
235
+ ### cloud-config.yaml
236
+
237
+ <!-- This schema was originally generated with tfplugindocs, then modified manually to ensure `part` block list is noted as Required -->
238
+
173
239
  :param str resource_name: The name of the resource.
174
240
  :param ConfigArgs args: The arguments to use to populate this resource's properties.
175
241
  :param pulumi.ResourceOptions opts: Options for the resource.
@@ -190,8 +256,6 @@ Please use the getConfig data source instead.""", DeprecationWarning)
190
256
  gzip: Optional[pulumi.Input[bool]] = None,
191
257
  parts: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ConfigPartArgs']]]]] = None,
192
258
  __props__=None):
193
- pulumi.log.warn("""Config is deprecated: This resource is deprecated.
194
- Please use the getConfig data source instead.""")
195
259
  opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
196
260
  if not isinstance(opts, pulumi.ResourceOptions):
197
261
  raise TypeError('Expected resource options to be a ResourceOptions instance')
@@ -203,8 +267,6 @@ Please use the getConfig data source instead.""")
203
267
  __props__.__dict__["base64_encode"] = base64_encode
204
268
  __props__.__dict__["boundary"] = boundary
205
269
  __props__.__dict__["gzip"] = gzip
206
- if parts is None and not opts.urn:
207
- raise TypeError("Missing required property 'parts'")
208
270
  __props__.__dict__["parts"] = parts
209
271
  __props__.__dict__["rendered"] = None
210
272
  super(Config, __self__).__init__(
@@ -229,7 +291,11 @@ Please use the getConfig data source instead.""")
229
291
  :param str resource_name: The unique name of the resulting resource.
230
292
  :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
231
293
  :param pulumi.ResourceOptions opts: Options for the resource.
232
- :param pulumi.Input[str] rendered: rendered cloudinit configuration
294
+ :param pulumi.Input[bool] base64_encode: Specify whether or not to base64 encode the `rendered` output. Defaults to `true`, and cannot be disabled if gzip is `true`.
295
+ :param pulumi.Input[str] boundary: Specify the Writer's default boundary separator. Defaults to `MIMEBOUNDARY`.
296
+ :param pulumi.Input[bool] gzip: Specify whether or not to gzip the `rendered` output. Defaults to `true`.
297
+ :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ConfigPartArgs']]]] parts: A nested block type which adds a file to the generated cloud-init configuration. Use multiple `part` blocks to specify multiple files, which will be included in order of declaration in the final MIME document.
298
+ :param pulumi.Input[str] rendered: The final rendered multi-part cloud-init config.
233
299
  """
234
300
  opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
235
301
 
@@ -244,29 +310,41 @@ Please use the getConfig data source instead.""")
244
310
 
245
311
  @property
246
312
  @pulumi.getter(name="base64Encode")
247
- def base64_encode(self) -> pulumi.Output[Optional[bool]]:
313
+ def base64_encode(self) -> pulumi.Output[bool]:
314
+ """
315
+ Specify whether or not to base64 encode the `rendered` output. Defaults to `true`, and cannot be disabled if gzip is `true`.
316
+ """
248
317
  return pulumi.get(self, "base64_encode")
249
318
 
250
319
  @property
251
320
  @pulumi.getter
252
- def boundary(self) -> pulumi.Output[Optional[str]]:
321
+ def boundary(self) -> pulumi.Output[str]:
322
+ """
323
+ Specify the Writer's default boundary separator. Defaults to `MIMEBOUNDARY`.
324
+ """
253
325
  return pulumi.get(self, "boundary")
254
326
 
255
327
  @property
256
328
  @pulumi.getter
257
- def gzip(self) -> pulumi.Output[Optional[bool]]:
329
+ def gzip(self) -> pulumi.Output[bool]:
330
+ """
331
+ Specify whether or not to gzip the `rendered` output. Defaults to `true`.
332
+ """
258
333
  return pulumi.get(self, "gzip")
259
334
 
260
335
  @property
261
336
  @pulumi.getter
262
- def parts(self) -> pulumi.Output[Sequence['outputs.ConfigPart']]:
337
+ def parts(self) -> pulumi.Output[Optional[Sequence['outputs.ConfigPart']]]:
338
+ """
339
+ A nested block type which adds a file to the generated cloud-init configuration. Use multiple `part` blocks to specify multiple files, which will be included in order of declaration in the final MIME document.
340
+ """
263
341
  return pulumi.get(self, "parts")
264
342
 
265
343
  @property
266
344
  @pulumi.getter
267
345
  def rendered(self) -> pulumi.Output[str]:
268
346
  """
269
- rendered cloudinit configuration
347
+ The final rendered multi-part cloud-init config.
270
348
  """
271
349
  return pulumi.get(self, "rendered")
272
350
 
@@ -45,30 +45,42 @@ class GetConfigResult:
45
45
 
46
46
  @property
47
47
  @pulumi.getter(name="base64Encode")
48
- def base64_encode(self) -> Optional[bool]:
48
+ def base64_encode(self) -> bool:
49
+ """
50
+ Specify whether or not to base64 encode the `rendered` output. Defaults to `true`, and cannot be disabled if gzip is `true`.
51
+ """
49
52
  return pulumi.get(self, "base64_encode")
50
53
 
51
54
  @property
52
55
  @pulumi.getter
53
- def boundary(self) -> Optional[str]:
56
+ def boundary(self) -> str:
57
+ """
58
+ Specify the Writer's default boundary separator. Defaults to `MIMEBOUNDARY`.
59
+ """
54
60
  return pulumi.get(self, "boundary")
55
61
 
56
62
  @property
57
63
  @pulumi.getter
58
- def gzip(self) -> Optional[bool]:
64
+ def gzip(self) -> bool:
65
+ """
66
+ Specify whether or not to gzip the `rendered` output. Defaults to `true`.
67
+ """
59
68
  return pulumi.get(self, "gzip")
60
69
 
61
70
  @property
62
71
  @pulumi.getter
63
72
  def id(self) -> str:
64
73
  """
65
- The provider-assigned unique ID for this managed resource.
74
+ [CRC-32](https://pkg.go.dev/hash/crc32) checksum of `rendered` cloud-init config.
66
75
  """
67
76
  return pulumi.get(self, "id")
68
77
 
69
78
  @property
70
79
  @pulumi.getter
71
- def parts(self) -> Sequence['outputs.GetConfigPartResult']:
80
+ def parts(self) -> Optional[Sequence['outputs.GetConfigPartResult']]:
81
+ """
82
+ A nested block type which adds a file to the generated cloud-init configuration. Use multiple `part` blocks to specify multiple files, which will be included in order of declaration in the final MIME document.
83
+ """
72
84
  return pulumi.get(self, "parts")
73
85
 
74
86
  @property
@@ -100,43 +112,27 @@ def get_config(base64_encode: Optional[bool] = None,
100
112
  parts: Optional[Sequence[pulumi.InputType['GetConfigPartArgs']]] = None,
101
113
  opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetConfigResult:
102
114
  """
103
- Renders a [multipart MIME configuration](https://cloudinit.readthedocs.io/en/latest/topics/format.html#mime-multi-part-archive)
104
- for use with [cloud-init](https://cloudinit.readthedocs.io/).
115
+ Renders a [multi-part MIME configuration](https://cloudinit.readthedocs.io/en/latest/explanation/format.html#mime-multi-part-archive) for use with [cloud-init](https://cloudinit.readthedocs.io/en/latest/).
105
116
 
106
- Cloud-init is a commonly-used startup configuration utility for cloud compute
107
- instances. It accepts configuration via provider-specific user data mechanisms,
108
- such as `user_data` for Amazon EC2 instances. Multipart MIME is one of the
109
- data formats it accepts. For more information, see
110
- [User-Data Formats](https://cloudinit.readthedocs.io/en/latest/topics/format.html)
111
- in the cloud-init manual.
117
+ Cloud-init is a commonly-used startup configuration utility for cloud compute instances. It accepts configuration via provider-specific user data mechanisms, such as `user_data` for Amazon EC2 instances. Multi-part MIME is one of the data formats it accepts. For more information, see [User-Data Formats](https://cloudinit.readthedocs.io/en/latest/explanation/format.html) in the cloud-init manual.
112
118
 
113
- This is not a generalized utility for producing multipart MIME messages. Its
114
- featureset is specialized for the features of cloud-init.
119
+ This is not a generalized utility for producing multi-part MIME messages. It's feature set is specialized for cloud-init multi-part MIME messages.
115
120
 
116
121
  ## Example Usage
117
122
 
118
- ```python
119
- import pulumi
120
- import pulumi_cloudinit as cloudinit
121
-
122
- foo = cloudinit.get_config(base64_encode=False,
123
- gzip=False,
124
- parts=[cloudinit.GetConfigPartArgs(
125
- content="baz",
126
- content_type="text/x-shellscript",
127
- filename="foobar.sh",
128
- )])
129
- ```
130
-
131
-
132
- :param bool base64_encode: Base64 encoding of the rendered output. Defaults to `true`,
133
- and cannot be disabled if `gzip` is `true`.
134
- :param str boundary: Define the Writer's default boundary separator. Defaults to `MIMEBOUNDARY`.
135
- :param bool gzip: Specify whether or not to gzip the rendered output. Defaults to `true`.
136
- :param Sequence[pulumi.InputType['GetConfigPartArgs']] parts: A nested block type which adds a file to the generated
137
- cloud-init configuration. Use multiple `part` blocks to specify multiple
138
- files, which will be included in order of declaration in the final MIME
139
- document.
123
+ ### Config
124
+
125
+ ### hello-script.sh
126
+
127
+ ### cloud-config.yaml
128
+
129
+ <!-- This schema was originally generated with tfplugindocs, then modified manually to ensure `part` block list is noted as Required -->
130
+
131
+
132
+ :param bool base64_encode: Specify whether or not to base64 encode the `rendered` output. Defaults to `true`, and cannot be disabled if gzip is `true`.
133
+ :param str boundary: Specify the Writer's default boundary separator. Defaults to `MIMEBOUNDARY`.
134
+ :param bool gzip: Specify whether or not to gzip the `rendered` output. Defaults to `true`.
135
+ :param Sequence[pulumi.InputType['GetConfigPartArgs']] parts: A nested block type which adds a file to the generated cloud-init configuration. Use multiple `part` blocks to specify multiple files, which will be included in order of declaration in the final MIME document.
140
136
  """
141
137
  __args__ = dict()
142
138
  __args__['base64Encode'] = base64_encode
@@ -159,45 +155,29 @@ def get_config(base64_encode: Optional[bool] = None,
159
155
  def get_config_output(base64_encode: Optional[pulumi.Input[Optional[bool]]] = None,
160
156
  boundary: Optional[pulumi.Input[Optional[str]]] = None,
161
157
  gzip: Optional[pulumi.Input[Optional[bool]]] = None,
162
- parts: Optional[pulumi.Input[Sequence[pulumi.InputType['GetConfigPartArgs']]]] = None,
158
+ parts: Optional[pulumi.Input[Optional[Sequence[pulumi.InputType['GetConfigPartArgs']]]]] = None,
163
159
  opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetConfigResult]:
164
160
  """
165
- Renders a [multipart MIME configuration](https://cloudinit.readthedocs.io/en/latest/topics/format.html#mime-multi-part-archive)
166
- for use with [cloud-init](https://cloudinit.readthedocs.io/).
161
+ Renders a [multi-part MIME configuration](https://cloudinit.readthedocs.io/en/latest/explanation/format.html#mime-multi-part-archive) for use with [cloud-init](https://cloudinit.readthedocs.io/en/latest/).
167
162
 
168
- Cloud-init is a commonly-used startup configuration utility for cloud compute
169
- instances. It accepts configuration via provider-specific user data mechanisms,
170
- such as `user_data` for Amazon EC2 instances. Multipart MIME is one of the
171
- data formats it accepts. For more information, see
172
- [User-Data Formats](https://cloudinit.readthedocs.io/en/latest/topics/format.html)
173
- in the cloud-init manual.
163
+ Cloud-init is a commonly-used startup configuration utility for cloud compute instances. It accepts configuration via provider-specific user data mechanisms, such as `user_data` for Amazon EC2 instances. Multi-part MIME is one of the data formats it accepts. For more information, see [User-Data Formats](https://cloudinit.readthedocs.io/en/latest/explanation/format.html) in the cloud-init manual.
174
164
 
175
- This is not a generalized utility for producing multipart MIME messages. Its
176
- featureset is specialized for the features of cloud-init.
165
+ This is not a generalized utility for producing multi-part MIME messages. It's feature set is specialized for cloud-init multi-part MIME messages.
177
166
 
178
167
  ## Example Usage
179
168
 
180
- ```python
181
- import pulumi
182
- import pulumi_cloudinit as cloudinit
183
-
184
- foo = cloudinit.get_config(base64_encode=False,
185
- gzip=False,
186
- parts=[cloudinit.GetConfigPartArgs(
187
- content="baz",
188
- content_type="text/x-shellscript",
189
- filename="foobar.sh",
190
- )])
191
- ```
192
-
193
-
194
- :param bool base64_encode: Base64 encoding of the rendered output. Defaults to `true`,
195
- and cannot be disabled if `gzip` is `true`.
196
- :param str boundary: Define the Writer's default boundary separator. Defaults to `MIMEBOUNDARY`.
197
- :param bool gzip: Specify whether or not to gzip the rendered output. Defaults to `true`.
198
- :param Sequence[pulumi.InputType['GetConfigPartArgs']] parts: A nested block type which adds a file to the generated
199
- cloud-init configuration. Use multiple `part` blocks to specify multiple
200
- files, which will be included in order of declaration in the final MIME
201
- document.
169
+ ### Config
170
+
171
+ ### hello-script.sh
172
+
173
+ ### cloud-config.yaml
174
+
175
+ <!-- This schema was originally generated with tfplugindocs, then modified manually to ensure `part` block list is noted as Required -->
176
+
177
+
178
+ :param bool base64_encode: Specify whether or not to base64 encode the `rendered` output. Defaults to `true`, and cannot be disabled if gzip is `true`.
179
+ :param str boundary: Specify the Writer's default boundary separator. Defaults to `MIMEBOUNDARY`.
180
+ :param bool gzip: Specify whether or not to gzip the `rendered` output. Defaults to `true`.
181
+ :param Sequence[pulumi.InputType['GetConfigPartArgs']] parts: A nested block type which adds a file to the generated cloud-init configuration. Use multiple `part` blocks to specify multiple files, which will be included in order of declaration in the final MIME document.
202
182
  """
203
183
  ...
@@ -40,6 +40,12 @@ class ConfigPart(dict):
40
40
  content_type: Optional[str] = None,
41
41
  filename: Optional[str] = None,
42
42
  merge_type: Optional[str] = None):
43
+ """
44
+ :param str content: Body content for the part.
45
+ :param str content_type: A MIME-style content type to report in the header for the part. Defaults to `text/plain`
46
+ :param str filename: A filename to report in the header for the part.
47
+ :param str merge_type: A value for the `X-Merge-Type` header of the part, to control [cloud-init merging behavior](https://cloudinit.readthedocs.io/en/latest/reference/merging.html).
48
+ """
43
49
  pulumi.set(__self__, "content", content)
44
50
  if content_type is not None:
45
51
  pulumi.set(__self__, "content_type", content_type)
@@ -51,21 +57,33 @@ class ConfigPart(dict):
51
57
  @property
52
58
  @pulumi.getter
53
59
  def content(self) -> str:
60
+ """
61
+ Body content for the part.
62
+ """
54
63
  return pulumi.get(self, "content")
55
64
 
56
65
  @property
57
66
  @pulumi.getter(name="contentType")
58
67
  def content_type(self) -> Optional[str]:
68
+ """
69
+ A MIME-style content type to report in the header for the part. Defaults to `text/plain`
70
+ """
59
71
  return pulumi.get(self, "content_type")
60
72
 
61
73
  @property
62
74
  @pulumi.getter
63
75
  def filename(self) -> Optional[str]:
76
+ """
77
+ A filename to report in the header for the part.
78
+ """
64
79
  return pulumi.get(self, "filename")
65
80
 
66
81
  @property
67
82
  @pulumi.getter(name="mergeType")
68
83
  def merge_type(self) -> Optional[str]:
84
+ """
85
+ A value for the `X-Merge-Type` header of the part, to control [cloud-init merging behavior](https://cloudinit.readthedocs.io/en/latest/reference/merging.html).
86
+ """
69
87
  return pulumi.get(self, "merge_type")
70
88
 
71
89
 
@@ -73,19 +91,17 @@ class ConfigPart(dict):
73
91
  class GetConfigPartResult(dict):
74
92
  def __init__(__self__, *,
75
93
  content: str,
76
- content_type: Optional[str] = None,
94
+ content_type: str,
77
95
  filename: Optional[str] = None,
78
96
  merge_type: Optional[str] = None):
79
97
  """
80
98
  :param str content: Body content for the part.
81
- :param str content_type: A MIME-style content type to report in the header for the part.
99
+ :param str content_type: A MIME-style content type to report in the header for the part. Defaults to `text/plain`
82
100
  :param str filename: A filename to report in the header for the part.
83
- :param str merge_type: A value for the `X-Merge-Type` header of the part,
84
- to control [cloud-init merging behavior](https://cloudinit.readthedocs.io/en/latest/topics/merging.html).
101
+ :param str merge_type: A value for the `X-Merge-Type` header of the part, to control [cloud-init merging behavior](https://cloudinit.readthedocs.io/en/latest/reference/merging.html).
85
102
  """
86
103
  pulumi.set(__self__, "content", content)
87
- if content_type is not None:
88
- pulumi.set(__self__, "content_type", content_type)
104
+ pulumi.set(__self__, "content_type", content_type)
89
105
  if filename is not None:
90
106
  pulumi.set(__self__, "filename", filename)
91
107
  if merge_type is not None:
@@ -101,9 +117,9 @@ class GetConfigPartResult(dict):
101
117
 
102
118
  @property
103
119
  @pulumi.getter(name="contentType")
104
- def content_type(self) -> Optional[str]:
120
+ def content_type(self) -> str:
105
121
  """
106
- A MIME-style content type to report in the header for the part.
122
+ A MIME-style content type to report in the header for the part. Defaults to `text/plain`
107
123
  """
108
124
  return pulumi.get(self, "content_type")
109
125
 
@@ -119,8 +135,7 @@ class GetConfigPartResult(dict):
119
135
  @pulumi.getter(name="mergeType")
120
136
  def merge_type(self) -> Optional[str]:
121
137
  """
122
- A value for the `X-Merge-Type` header of the part,
123
- to control [cloud-init merging behavior](https://cloudinit.readthedocs.io/en/latest/topics/merging.html).
138
+ A value for the `X-Merge-Type` header of the part, to control [cloud-init merging behavior](https://cloudinit.readthedocs.io/en/latest/reference/merging.html).
124
139
  """
125
140
  return pulumi.get(self, "merge_type")
126
141
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: pulumi_cloudinit
3
- Version: 1.4.0a1704346182
3
+ Version: 1.5.0a1704428144
4
4
  Summary: A Pulumi package for creating and managing cloudinit cloud resources.
5
5
  License: Apache-2.0
6
6
  Project-URL: Homepage, https://pulumi.io
@@ -0,0 +1,13 @@
1
+ pulumi_cloudinit/__init__.py,sha256=ZUoQnlEisLLi4mXn2olbTSvLgktNDKJO5WAmhtnkF2o,742
2
+ pulumi_cloudinit/_inputs.py,sha256=GL0gvB5h0f1KZtZ31ozFFYe-BToAU3fwiuziTQcWqiI,5513
3
+ pulumi_cloudinit/_utilities.py,sha256=nNKRJyG0bkCleVzIGnszB5TSQOVUqAHks2baneWhujg,9249
4
+ pulumi_cloudinit/config.py,sha256=iLwjKQpi_Ck1eNnY8ub09hmbo4pwW3r4k5OgQDYquK8,16889
5
+ pulumi_cloudinit/get_config.py,sha256=LVR_IHBf00GDUD_6EBVXZHbWv27PBg9g8uu08sYHsuY,8475
6
+ pulumi_cloudinit/outputs.py,sha256=ne_sKf_Unai_Ryf69xDxuS5oTPNMqknDdIsFb4qIsA0,5023
7
+ pulumi_cloudinit/provider.py,sha256=kxpTmaKzB_SnaSlNKTBEAeyoo_sKz4vipRY3G00Js_0,3429
8
+ pulumi_cloudinit/pulumi-plugin.json,sha256=f1L05qN3IdrE47swUPv878naQdq3kUSauEF2fUYKy34,46
9
+ pulumi_cloudinit/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
10
+ pulumi_cloudinit-1.5.0a1704428144.dist-info/METADATA,sha256=q8qSF_SuC_L9lF8QmK14Di3S1zT-fJueh3xFDCI1NyU,2303
11
+ pulumi_cloudinit-1.5.0a1704428144.dist-info/WHEEL,sha256=oiQVh_5PnQM0E3gPdiz09WCNmwiHDMaGer_elqB3coM,92
12
+ pulumi_cloudinit-1.5.0a1704428144.dist-info/top_level.txt,sha256=r4QYaTIAq7VhHfjPgOmRvtkrHwZffd3a78VTmuaWcg8,17
13
+ pulumi_cloudinit-1.5.0a1704428144.dist-info/RECORD,,
@@ -1,13 +0,0 @@
1
- pulumi_cloudinit/__init__.py,sha256=ZUoQnlEisLLi4mXn2olbTSvLgktNDKJO5WAmhtnkF2o,742
2
- pulumi_cloudinit/_inputs.py,sha256=YHeuslFEu4--3_4lTZ0w5W3Vg49ZRc8H66xtqUtY6KI,4579
3
- pulumi_cloudinit/_utilities.py,sha256=nNKRJyG0bkCleVzIGnszB5TSQOVUqAHks2baneWhujg,9249
4
- pulumi_cloudinit/config.py,sha256=HIVkfUxJmT0x7s4lt3hOEw0U0XMREc6ZVib1ILjE6Ys,10490
5
- pulumi_cloudinit/get_config.py,sha256=ZhUEemrIAEzfZtQwcvBZduL-ectPZeW01GlhxrT1D-E,8094
6
- pulumi_cloudinit/outputs.py,sha256=ohVXil3dpRKWFliElMCc1nIepcF_Qy8HfNOPU1lpF0I,4135
7
- pulumi_cloudinit/provider.py,sha256=kxpTmaKzB_SnaSlNKTBEAeyoo_sKz4vipRY3G00Js_0,3429
8
- pulumi_cloudinit/pulumi-plugin.json,sha256=f1L05qN3IdrE47swUPv878naQdq3kUSauEF2fUYKy34,46
9
- pulumi_cloudinit/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
10
- pulumi_cloudinit-1.4.0a1704346182.dist-info/METADATA,sha256=n9IAQTbMVa5jJ-I6K-B8ByQ76JWNi3XbtkE_ljQy0n8,2303
11
- pulumi_cloudinit-1.4.0a1704346182.dist-info/WHEEL,sha256=oiQVh_5PnQM0E3gPdiz09WCNmwiHDMaGer_elqB3coM,92
12
- pulumi_cloudinit-1.4.0a1704346182.dist-info/top_level.txt,sha256=r4QYaTIAq7VhHfjPgOmRvtkrHwZffd3a78VTmuaWcg8,17
13
- pulumi_cloudinit-1.4.0a1704346182.dist-info/RECORD,,