@pulumi/docker 3.1.0 → 3.2.0-alpha.1638817875

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 (65) hide show
  1. package/README.md +1 -1
  2. package/config/index.js +11 -4
  3. package/config/index.js.map +1 -1
  4. package/config/vars.d.ts +6 -6
  5. package/config/vars.js +38 -22
  6. package/config/vars.js.map +1 -1
  7. package/container.d.ts +168 -186
  8. package/container.js +16 -0
  9. package/container.js.map +1 -1
  10. package/docker.js +1 -0
  11. package/docker.js.map +1 -1
  12. package/getNetwork.d.ts +36 -28
  13. package/getNetwork.js +6 -27
  14. package/getNetwork.js.map +1 -1
  15. package/getPlugin.d.ts +43 -16
  16. package/getPlugin.js +5 -14
  17. package/getPlugin.js.map +1 -1
  18. package/getRegistryImage.d.ts +31 -18
  19. package/getRegistryImage.js +5 -16
  20. package/getRegistryImage.js.map +1 -1
  21. package/getRemoteImage.d.ts +24 -20
  22. package/getRemoteImage.js +9 -19
  23. package/getRemoteImage.js.map +1 -1
  24. package/image.js +1 -0
  25. package/image.js.map +1 -1
  26. package/index.js +28 -20
  27. package/index.js.map +1 -1
  28. package/network.d.ts +29 -78
  29. package/network.js +1 -43
  30. package/network.js.map +1 -1
  31. package/package.json +4 -3
  32. package/package.json.bak +3 -2
  33. package/package.json.dev +4 -3
  34. package/plugin.d.ts +20 -51
  35. package/plugin.js +2 -32
  36. package/plugin.js.map +1 -1
  37. package/provider.d.ts +26 -6
  38. package/provider.js +2 -1
  39. package/provider.js.map +1 -1
  40. package/registryImage.d.ts +12 -100
  41. package/registryImage.js +1 -85
  42. package/registryImage.js.map +1 -1
  43. package/remoteImage.d.ts +24 -73
  44. package/remoteImage.js +1 -40
  45. package/remoteImage.js.map +1 -1
  46. package/secret.d.ts +7 -7
  47. package/secret.js +2 -1
  48. package/secret.js.map +1 -1
  49. package/service.d.ts +18 -18
  50. package/service.js +1 -0
  51. package/service.js.map +1 -1
  52. package/serviceConfig.d.ts +4 -4
  53. package/serviceConfig.js +1 -0
  54. package/serviceConfig.js.map +1 -1
  55. package/types/index.js +1 -0
  56. package/types/index.js.map +1 -1
  57. package/types/input.d.ts +423 -0
  58. package/types/output.d.ts +423 -7
  59. package/utilities.js +1 -0
  60. package/utilities.js.map +1 -1
  61. package/utils.js +1 -0
  62. package/utils.js.map +1 -1
  63. package/volume.d.ts +9 -32
  64. package/volume.js +1 -23
  65. package/volume.js.map +1 -1
package/types/output.d.ts CHANGED
@@ -1,35 +1,98 @@
1
1
  import { output as outputs } from "../types";
2
2
  export interface ContainerCapabilities {
3
+ /**
4
+ * List of linux capabilities to add.
5
+ */
3
6
  adds?: string[];
7
+ /**
8
+ * List of linux capabilities to drop.
9
+ */
4
10
  drops?: string[];
5
11
  }
6
12
  export interface ContainerDevice {
13
+ /**
14
+ * The path in the container where the device will be bound.
15
+ */
7
16
  containerPath?: string;
17
+ /**
18
+ * The path on the host where the device is located.
19
+ */
8
20
  hostPath: string;
21
+ /**
22
+ * The cgroup permissions given to the container to access the device. Defaults to `rwm`.
23
+ */
9
24
  permissions?: string;
10
25
  }
11
26
  export interface ContainerHealthcheck {
27
+ /**
28
+ * Time between running the check (ms|s|m|h). Defaults to `0s`.
29
+ */
12
30
  interval?: string;
31
+ /**
32
+ * Consecutive failures needed to report unhealthy. Defaults to `0`.
33
+ */
13
34
  retries?: number;
35
+ /**
36
+ * Start period for the container to initialize before counting retries towards unstable (ms|s|m|h). Defaults to `0s`.
37
+ */
14
38
  startPeriod?: string;
39
+ /**
40
+ * Command to run to check health. For example, to run `curl -f localhost/health` set the command to be `["CMD", "curl", "-f", "localhost/health"]`.
41
+ */
15
42
  tests: string[];
43
+ /**
44
+ * Maximum time to allow one check to run (ms|s|m|h). Defaults to `0s`.
45
+ */
16
46
  timeout?: string;
17
47
  }
18
48
  export interface ContainerHost {
49
+ /**
50
+ * Hostname to add
51
+ */
19
52
  host: string;
53
+ /**
54
+ * IP address this hostname should resolve to.
55
+ */
20
56
  ip: string;
21
57
  }
22
58
  export interface ContainerLabel {
59
+ /**
60
+ * Name of the label
61
+ */
23
62
  label: string;
63
+ /**
64
+ * Value of the label
65
+ */
24
66
  value: string;
25
67
  }
26
68
  export interface ContainerMount {
69
+ /**
70
+ * Optional configuration for the bind type.
71
+ */
27
72
  bindOptions?: outputs.ContainerMountBindOptions;
73
+ /**
74
+ * Whether the mount should be read-only.
75
+ */
28
76
  readOnly?: boolean;
77
+ /**
78
+ * Mount source (e.g. a volume name, a host path).
79
+ */
29
80
  source?: string;
81
+ /**
82
+ * Container path
83
+ */
30
84
  target: string;
85
+ /**
86
+ * Optional configuration for the tmpfs type.
87
+ */
31
88
  tmpfsOptions?: outputs.ContainerMountTmpfsOptions;
89
+ /**
90
+ * The mount type
91
+ */
32
92
  type: string;
93
+ /**
94
+ * Optional configuration for the volume type.
95
+ */
33
96
  volumeOptions?: outputs.ContainerMountVolumeOptions;
34
97
  }
35
98
  export interface ContainerMountBindOptions {
@@ -44,25 +107,40 @@ export interface ContainerMountVolumeOptions {
44
107
  driverOptions?: {
45
108
  [key: string]: string;
46
109
  };
110
+ /**
111
+ * User-defined key/value metadata
112
+ */
47
113
  labels?: outputs.ContainerMountVolumeOptionsLabel[];
48
114
  noCopy?: boolean;
49
115
  }
50
116
  export interface ContainerMountVolumeOptionsLabel {
117
+ /**
118
+ * Name of the label
119
+ */
51
120
  label: string;
121
+ /**
122
+ * Value of the label
123
+ */
52
124
  value: string;
53
125
  }
54
126
  export interface ContainerNetworkData {
55
127
  /**
128
+ * The network gateway of the container.
129
+ *
56
130
  * @deprecated Use `network_data` instead. The network gateway of the container as read from its NetworkSettings.
57
131
  */
58
132
  gateway: string;
59
133
  globalIpv6Address: string;
60
134
  globalIpv6PrefixLength: number;
61
135
  /**
136
+ * The IP address of the container.
137
+ *
62
138
  * @deprecated Use `network_data` instead. The IP address of the container's first network it.
63
139
  */
64
140
  ipAddress: string;
65
141
  /**
142
+ * The IP prefix length of the container.
143
+ *
66
144
  * @deprecated Use `network_data` instead. The IP prefix length of the container as read from its NetworkSettings.
67
145
  */
68
146
  ipPrefixLength: number;
@@ -70,35 +148,98 @@ export interface ContainerNetworkData {
70
148
  networkName: string;
71
149
  }
72
150
  export interface ContainerNetworksAdvanced {
151
+ /**
152
+ * The network aliases of the container in the specific network.
153
+ */
73
154
  aliases?: string[];
155
+ /**
156
+ * The IPV4 address of the container in the specific network.
157
+ */
74
158
  ipv4Address?: string;
159
+ /**
160
+ * The IPV6 address of the container in the specific network.
161
+ */
75
162
  ipv6Address?: string;
163
+ /**
164
+ * The name of the network.
165
+ */
76
166
  name: string;
77
167
  }
78
168
  export interface ContainerPort {
169
+ /**
170
+ * Port exposed out of the container. If not given a free random port `>= 32768` will be used.
171
+ */
79
172
  external: number;
173
+ /**
174
+ * Port within the container.
175
+ */
80
176
  internal: number;
177
+ /**
178
+ * IP address/mask that can access this port. Defaults to `0.0.0.0`.
179
+ */
81
180
  ip?: string;
181
+ /**
182
+ * Protocol that can be used over this port. Defaults to `tcp`.
183
+ */
82
184
  protocol?: string;
83
185
  }
84
186
  export interface ContainerUlimit {
187
+ /**
188
+ * The hard limit
189
+ */
85
190
  hard: number;
191
+ /**
192
+ * The name of the ulimit
193
+ */
86
194
  name: string;
195
+ /**
196
+ * The soft limit
197
+ */
87
198
  soft: number;
88
199
  }
89
200
  export interface ContainerUpload {
201
+ /**
202
+ * Literal string value to use as the object content, which will be uploaded as UTF-8-encoded text. Conflicts with `contentBase64` & `source`
203
+ */
90
204
  content?: string;
91
205
  contentBase64?: string;
206
+ /**
207
+ * If `true`, the file will be uploaded with user executable permission. Defaults to `false`.
208
+ */
92
209
  executable?: boolean;
210
+ /**
211
+ * Path to the file in the container where is upload goes to
212
+ */
93
213
  file: string;
214
+ /**
215
+ * A filename that references a file which will be uploaded as the object content. This allows for large file uploads that do not get stored in state. Conflicts with `content` & `contentBase64`
216
+ */
94
217
  source?: string;
218
+ /**
219
+ * If using `source`, this will force an update if the file content has updated but the filename has not.
220
+ */
95
221
  sourceHash?: string;
96
222
  }
97
223
  export interface ContainerVolume {
224
+ /**
225
+ * The path in the container where the volume will be mounted.
226
+ */
98
227
  containerPath?: string;
228
+ /**
229
+ * The container where the volume is coming from.
230
+ */
99
231
  fromContainer?: string;
232
+ /**
233
+ * The path on the host where the volume is coming from.
234
+ */
100
235
  hostPath?: string;
236
+ /**
237
+ * If `true`, this volume will be readonly. Defaults to `false`.
238
+ */
101
239
  readOnly?: boolean;
240
+ /**
241
+ * The name of the docker volume which should be mounted.
242
+ */
102
243
  volumeName?: string;
103
244
  }
104
245
  export interface GetNetworkIpamConfig {
@@ -110,64 +251,177 @@ export interface GetNetworkIpamConfig {
110
251
  subnet?: string;
111
252
  }
112
253
  export interface NetworkIpamConfig {
254
+ /**
255
+ * Auxiliary IPv4 or IPv6 addresses used by Network driver
256
+ */
113
257
  auxAddress?: {
114
258
  [key: string]: any;
115
259
  };
260
+ /**
261
+ * The IP address of the gateway
262
+ */
116
263
  gateway?: string;
264
+ /**
265
+ * The ip range in CIDR form
266
+ */
117
267
  ipRange?: string;
268
+ /**
269
+ * The subnet in CIDR form
270
+ */
118
271
  subnet?: string;
119
272
  }
120
273
  export interface NetworkLabel {
274
+ /**
275
+ * Name of the label
276
+ */
121
277
  label: string;
278
+ /**
279
+ * Value of the label
280
+ */
122
281
  value: string;
123
282
  }
124
283
  export interface PluginGrantPermission {
284
+ /**
285
+ * The name of the permission
286
+ */
125
287
  name: string;
288
+ /**
289
+ * The value of the permission
290
+ */
126
291
  values: string[];
127
292
  }
128
- export interface ProviderRegistryAuth {
129
- address?: string;
130
- configFile?: string;
131
- configFileContent?: string;
132
- password?: string;
133
- username?: string;
134
- }
135
293
  export interface RegistryImageBuild {
294
+ /**
295
+ * The configuration for the authentication
296
+ */
136
297
  authConfigs?: outputs.RegistryImageBuildAuthConfig[];
298
+ /**
299
+ * Pairs for build-time variables in the form TODO
300
+ */
137
301
  buildArgs?: {
138
302
  [key: string]: string;
139
303
  };
304
+ /**
305
+ * BuildID is an optional identifier that can be passed together with the build request. The
306
+ */
140
307
  buildId?: string;
308
+ /**
309
+ * Images to consider as cache sources
310
+ */
141
311
  cacheFroms?: string[];
312
+ /**
313
+ * Optional parent cgroup for the container
314
+ */
142
315
  cgroupParent?: string;
316
+ /**
317
+ * The absolute path to the context folder. You can use the helper function '${path.cwd}/context-dir'.
318
+ */
143
319
  context: string;
320
+ /**
321
+ * The length of a CPU period in microseconds
322
+ */
144
323
  cpuPeriod?: number;
324
+ /**
325
+ * Microseconds of CPU time that the container can get in a CPU period
326
+ */
145
327
  cpuQuota?: number;
328
+ /**
329
+ * CPUs in which to allow execution (e.g., `0-3`, `0`, `1`)
330
+ */
146
331
  cpuSetCpus?: string;
332
+ /**
333
+ * MEMs in which to allow execution (`0-3`, `0`, `1`)
334
+ */
147
335
  cpuSetMems?: string;
336
+ /**
337
+ * CPU shares (relative weight)
338
+ */
148
339
  cpuShares?: number;
340
+ /**
341
+ * Dockerfile file. Defaults to `Dockerfile`
342
+ */
149
343
  dockerfile?: string;
344
+ /**
345
+ * A list of hostnames/IP mappings to add to the container’s /etc/hosts file. Specified in the form ["hostname:IP"]
346
+ */
150
347
  extraHosts?: string[];
348
+ /**
349
+ * Always remove intermediate containers
350
+ */
151
351
  forceRemove?: boolean;
352
+ /**
353
+ * Isolation represents the isolation technology of a container. The supported values are
354
+ */
152
355
  isolation?: string;
356
+ /**
357
+ * User-defined key/value metadata
358
+ */
153
359
  labels?: {
154
360
  [key: string]: string;
155
361
  };
362
+ /**
363
+ * Set memory limit for build
364
+ */
156
365
  memory?: number;
366
+ /**
367
+ * Total memory (memory + swap), -1 to enable unlimited swap
368
+ */
157
369
  memorySwap?: number;
370
+ /**
371
+ * Set the networking mode for the RUN instructions during build
372
+ */
158
373
  networkMode?: string;
374
+ /**
375
+ * Do not use the cache when building the image
376
+ */
159
377
  noCache?: boolean;
378
+ /**
379
+ * Set platform if server is multi-platform capable
380
+ */
160
381
  platform?: string;
382
+ /**
383
+ * Attempt to pull the image even if an older image exists locally
384
+ */
161
385
  pullParent?: boolean;
386
+ /**
387
+ * A Git repository URI or HTTP/HTTPS context URI
388
+ */
162
389
  remoteContext?: string;
390
+ /**
391
+ * Remove intermediate containers after a successful build (default behavior)
392
+ */
163
393
  remove?: boolean;
394
+ /**
395
+ * The security options
396
+ */
164
397
  securityOpts?: string[];
398
+ /**
399
+ * Set an ID for the build session
400
+ */
165
401
  sessionId?: string;
402
+ /**
403
+ * Size of /dev/shm in bytes. The size must be greater than 0
404
+ */
166
405
  shmSize?: number;
406
+ /**
407
+ * If true the new layers are squashed into a new image with a single new layer
408
+ */
167
409
  squash?: boolean;
410
+ /**
411
+ * Suppress the build output and print image ID on success
412
+ */
168
413
  suppressOutput?: boolean;
414
+ /**
415
+ * Set the target build stage to build
416
+ */
169
417
  target?: string;
418
+ /**
419
+ * Configuration for ulimits
420
+ */
170
421
  ulimits?: outputs.RegistryImageBuildUlimit[];
422
+ /**
423
+ * Version of the unerlying builder to use
424
+ */
171
425
  version?: string;
172
426
  }
173
427
  export interface RegistryImageBuildAuthConfig {
@@ -182,42 +436,102 @@ export interface RegistryImageBuildAuthConfig {
182
436
  }
183
437
  export interface RegistryImageBuildUlimit {
184
438
  hard: number;
439
+ /**
440
+ * The name of the Docker image.
441
+ */
185
442
  name: string;
186
443
  soft: number;
187
444
  }
188
445
  export interface RemoteImageBuild {
446
+ /**
447
+ * Set build-time variables
448
+ */
189
449
  buildArg?: {
190
450
  [key: string]: string;
191
451
  };
452
+ /**
453
+ * Name of the Dockerfile. Defaults to `Dockerfile`.
454
+ */
192
455
  dockerfile?: string;
456
+ /**
457
+ * Always remove intermediate containers
458
+ */
193
459
  forceRemove?: boolean;
460
+ /**
461
+ * Set metadata for an image
462
+ */
194
463
  label?: {
195
464
  [key: string]: string;
196
465
  };
466
+ /**
467
+ * Do not use cache when building the image
468
+ */
197
469
  noCache?: boolean;
470
+ /**
471
+ * Context path
472
+ */
198
473
  path: string;
474
+ /**
475
+ * Remove intermediate containers after a successful build. Defaults to `true`.
476
+ */
199
477
  remove?: boolean;
478
+ /**
479
+ * Name and optionally a tag in the 'name:tag' format
480
+ */
200
481
  tags?: string[];
482
+ /**
483
+ * Set the target build stage to build
484
+ */
201
485
  target?: string;
202
486
  }
203
487
  export interface SecretLabel {
488
+ /**
489
+ * Name of the label
490
+ */
204
491
  label: string;
492
+ /**
493
+ * Value of the label
494
+ */
205
495
  value: string;
206
496
  }
207
497
  export interface ServiceAuth {
498
+ /**
499
+ * The password
500
+ */
208
501
  password?: string;
502
+ /**
503
+ * The address of the server for the authentication
504
+ */
209
505
  serverAddress: string;
506
+ /**
507
+ * The username
508
+ */
210
509
  username?: string;
211
510
  }
212
511
  export interface ServiceConvergeConfig {
512
+ /**
513
+ * The interval to check if the desired state is reached (ms|s). Defaults to `7s`.
514
+ */
213
515
  delay?: string;
516
+ /**
517
+ * The timeout of the service to reach the desired state (s|m). Defaults to `3m`
518
+ */
214
519
  timeout?: string;
215
520
  }
216
521
  export interface ServiceEndpointSpec {
522
+ /**
523
+ * The mode of resolution to use for internal load balancing between tasks
524
+ */
217
525
  mode: string;
526
+ /**
527
+ * List of exposed ports that this service is accessible on from the outside. Ports can only be provided if 'vip' resolution mode is used
528
+ */
218
529
  ports?: outputs.ServiceEndpointSpecPort[];
219
530
  }
220
531
  export interface ServiceEndpointSpecPort {
532
+ /**
533
+ * Name of the service
534
+ */
221
535
  name?: string;
222
536
  protocol?: string;
223
537
  publishMode?: string;
@@ -225,32 +539,86 @@ export interface ServiceEndpointSpecPort {
225
539
  targetPort: number;
226
540
  }
227
541
  export interface ServiceLabel {
542
+ /**
543
+ * Name of the label
544
+ */
228
545
  label: string;
546
+ /**
547
+ * Value of the label
548
+ */
229
549
  value: string;
230
550
  }
231
551
  export interface ServiceMode {
552
+ /**
553
+ * The global service mode. Defaults to `false`
554
+ */
232
555
  global?: boolean;
556
+ /**
557
+ * The replicated service mode
558
+ */
233
559
  replicated: outputs.ServiceModeReplicated;
234
560
  }
235
561
  export interface ServiceModeReplicated {
236
562
  replicas?: number;
237
563
  }
238
564
  export interface ServiceRollbackConfig {
565
+ /**
566
+ * Delay between task rollbacks (ns|us|ms|s|m|h). Defaults to `0s`.
567
+ */
239
568
  delay?: string;
569
+ /**
570
+ * Action on rollback failure: pause | continue. Defaults to `pause`.
571
+ */
240
572
  failureAction?: string;
573
+ /**
574
+ * Failure rate to tolerate during a rollback. Defaults to `0.0`.
575
+ */
241
576
  maxFailureRatio?: string;
577
+ /**
578
+ * Duration after each task rollback to monitor for failure (ns|us|ms|s|m|h). Defaults to `5s`.
579
+ */
242
580
  monitor?: string;
581
+ /**
582
+ * Rollback order: either 'stop-first' or 'start-first'. Defaults to `stop-first`.
583
+ */
243
584
  order?: string;
585
+ /**
586
+ * Maximum number of tasks to be rollbacked in one iteration. Defaults to `1`
587
+ */
244
588
  parallelism?: number;
245
589
  }
246
590
  export interface ServiceTaskSpec {
591
+ /**
592
+ * The spec for each container
593
+ */
247
594
  containerSpec: outputs.ServiceTaskSpecContainerSpec;
595
+ /**
596
+ * A counter that triggers an update even if no relevant parameters have been changed. See the [spec](https://github.com/docker/swarmkit/blob/master/api/specs.proto#L126).
597
+ */
248
598
  forceUpdate: number;
599
+ /**
600
+ * Specifies the log driver to use for tasks created from this spec. If not present, the default one for the swarm will be used, finally falling back to the engine default if not specified
601
+ */
249
602
  logDriver?: outputs.ServiceTaskSpecLogDriver;
603
+ /**
604
+ * Ids of the networks in which the container will be put in
605
+ */
250
606
  networks?: string[];
607
+ /**
608
+ * The placement preferences
609
+ */
251
610
  placement: outputs.ServiceTaskSpecPlacement;
611
+ /**
612
+ * Resource requirements which apply to each individual container created as part of the service
613
+ */
252
614
  resources: outputs.ServiceTaskSpecResources;
615
+ /**
616
+ * Specification for the restart policy which applies to containers created as part of this service.
617
+ */
253
618
  restartPolicy: outputs.ServiceTaskSpecRestartPolicy;
619
+ /**
620
+ * Runtime is the type of runtime specified for the task executor. See the [types](https://github.com/moby/moby/blob/master/api/types/swarm/runtime.go).
621
+ */
254
622
  runtime: string;
255
623
  }
256
624
  export interface ServiceTaskSpecContainerSpec {
@@ -268,6 +636,9 @@ export interface ServiceTaskSpecContainerSpec {
268
636
  hosts?: outputs.ServiceTaskSpecContainerSpecHost[];
269
637
  image: string;
270
638
  isolation?: string;
639
+ /**
640
+ * User-defined key/value metadata
641
+ */
271
642
  labels?: outputs.ServiceTaskSpecContainerSpecLabel[];
272
643
  mounts?: outputs.ServiceTaskSpecContainerSpecMount[];
273
644
  privileges?: outputs.ServiceTaskSpecContainerSpecPrivileges;
@@ -302,7 +673,13 @@ export interface ServiceTaskSpecContainerSpecHost {
302
673
  ip: string;
303
674
  }
304
675
  export interface ServiceTaskSpecContainerSpecLabel {
676
+ /**
677
+ * Name of the label
678
+ */
305
679
  label: string;
680
+ /**
681
+ * Value of the label
682
+ */
306
683
  value: string;
307
684
  }
308
685
  export interface ServiceTaskSpecContainerSpecMount {
@@ -318,6 +695,9 @@ export interface ServiceTaskSpecContainerSpecMountBindOptions {
318
695
  propagation?: string;
319
696
  }
320
697
  export interface ServiceTaskSpecContainerSpecMountTmpfsOptions {
698
+ /**
699
+ * Scheduling mode for the service
700
+ */
321
701
  mode?: number;
322
702
  sizeBytes?: number;
323
703
  }
@@ -326,11 +706,20 @@ export interface ServiceTaskSpecContainerSpecMountVolumeOptions {
326
706
  driverOptions?: {
327
707
  [key: string]: string;
328
708
  };
709
+ /**
710
+ * User-defined key/value metadata
711
+ */
329
712
  labels?: outputs.ServiceTaskSpecContainerSpecMountVolumeOptionsLabel[];
330
713
  noCopy?: boolean;
331
714
  }
332
715
  export interface ServiceTaskSpecContainerSpecMountVolumeOptionsLabel {
716
+ /**
717
+ * Name of the label
718
+ */
333
719
  label: string;
720
+ /**
721
+ * Value of the label
722
+ */
334
723
  value: string;
335
724
  }
336
725
  export interface ServiceTaskSpecContainerSpecPrivileges {
@@ -357,6 +746,9 @@ export interface ServiceTaskSpecContainerSpecSecret {
357
746
  secretName?: string;
358
747
  }
359
748
  export interface ServiceTaskSpecLogDriver {
749
+ /**
750
+ * Name of the service
751
+ */
360
752
  name: string;
361
753
  options?: {
362
754
  [key: string]: string;
@@ -396,15 +788,39 @@ export interface ServiceTaskSpecRestartPolicy {
396
788
  window?: string;
397
789
  }
398
790
  export interface ServiceUpdateConfig {
791
+ /**
792
+ * Delay between task updates (ns|us|ms|s|m|h). Defaults to `0s`.
793
+ */
399
794
  delay?: string;
795
+ /**
796
+ * Action on update failure: pause | continue | rollback. Defaults to `pause`.
797
+ */
400
798
  failureAction?: string;
799
+ /**
800
+ * Failure rate to tolerate during an update. Defaults to `0.0`.
801
+ */
401
802
  maxFailureRatio?: string;
803
+ /**
804
+ * Duration after each task update to monitor for failure (ns|us|ms|s|m|h). Defaults to `5s`.
805
+ */
402
806
  monitor?: string;
807
+ /**
808
+ * Update order: either 'stop-first' or 'start-first'. Defaults to `stop-first`.
809
+ */
403
810
  order?: string;
811
+ /**
812
+ * Maximum number of tasks to be updated in one iteration. Defaults to `1`
813
+ */
404
814
  parallelism?: number;
405
815
  }
406
816
  export interface VolumeLabel {
817
+ /**
818
+ * Name of the label
819
+ */
407
820
  label: string;
821
+ /**
822
+ * Value of the label
823
+ */
408
824
  value: string;
409
825
  }
410
826
  export declare namespace config {
package/utilities.js CHANGED
@@ -2,6 +2,7 @@
2
2
  // *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
3
3
  // *** Do not edit by hand unless you're certain you know what you are doing! ***
4
4
  Object.defineProperty(exports, "__esModule", { value: true });
5
+ exports.getVersion = exports.getEnvNumber = exports.getEnvBoolean = exports.getEnv = void 0;
5
6
  function getEnv(...vars) {
6
7
  for (const v of vars) {
7
8
  const value = process.env[v];