@pulumi/docker 4.5.0-alpha.1698126220 → 4.5.0-alpha.1698202604
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.
- package/container.d.ts +12 -12
- package/package.json +1 -1
- package/plugin.d.ts +3 -3
- package/remoteImage.d.ts +9 -9
- package/service.d.ts +6 -6
- package/types/input.d.ts +324 -6
- package/types/output.d.ts +324 -6
package/container.d.ts
CHANGED
|
@@ -148,7 +148,7 @@ export declare class Container extends pulumi.CustomResource {
|
|
|
148
148
|
*/
|
|
149
149
|
readonly hostname: pulumi.Output<string>;
|
|
150
150
|
/**
|
|
151
|
-
*
|
|
151
|
+
* Hostname to add
|
|
152
152
|
*/
|
|
153
153
|
readonly hosts: pulumi.Output<outputs.ContainerHost[] | undefined>;
|
|
154
154
|
/**
|
|
@@ -164,7 +164,7 @@ export declare class Container extends pulumi.CustomResource {
|
|
|
164
164
|
*/
|
|
165
165
|
readonly ipcMode: pulumi.Output<string>;
|
|
166
166
|
/**
|
|
167
|
-
* User-defined key/value metadata
|
|
167
|
+
* User-defined key/value metadata.
|
|
168
168
|
*/
|
|
169
169
|
readonly labels: pulumi.Output<outputs.ContainerLabel[]>;
|
|
170
170
|
/**
|
|
@@ -203,7 +203,7 @@ export declare class Container extends pulumi.CustomResource {
|
|
|
203
203
|
*/
|
|
204
204
|
readonly mustRun: pulumi.Output<boolean | undefined>;
|
|
205
205
|
/**
|
|
206
|
-
* The name of the
|
|
206
|
+
* The name or id of the network to use. You can use `name` or `id` attribute from a `docker.Network` resource.
|
|
207
207
|
*/
|
|
208
208
|
readonly name: pulumi.Output<string>;
|
|
209
209
|
/**
|
|
@@ -235,7 +235,7 @@ export declare class Container extends pulumi.CustomResource {
|
|
|
235
235
|
*/
|
|
236
236
|
readonly publishAllPorts: pulumi.Output<boolean | undefined>;
|
|
237
237
|
/**
|
|
238
|
-
*
|
|
238
|
+
* Whether the mount should be read-only.
|
|
239
239
|
*/
|
|
240
240
|
readonly readOnly: pulumi.Output<boolean | undefined>;
|
|
241
241
|
/**
|
|
@@ -434,7 +434,7 @@ export interface ContainerState {
|
|
|
434
434
|
*/
|
|
435
435
|
hostname?: pulumi.Input<string>;
|
|
436
436
|
/**
|
|
437
|
-
*
|
|
437
|
+
* Hostname to add
|
|
438
438
|
*/
|
|
439
439
|
hosts?: pulumi.Input<pulumi.Input<inputs.ContainerHost>[]>;
|
|
440
440
|
/**
|
|
@@ -450,7 +450,7 @@ export interface ContainerState {
|
|
|
450
450
|
*/
|
|
451
451
|
ipcMode?: pulumi.Input<string>;
|
|
452
452
|
/**
|
|
453
|
-
* User-defined key/value metadata
|
|
453
|
+
* User-defined key/value metadata.
|
|
454
454
|
*/
|
|
455
455
|
labels?: pulumi.Input<pulumi.Input<inputs.ContainerLabel>[]>;
|
|
456
456
|
/**
|
|
@@ -489,7 +489,7 @@ export interface ContainerState {
|
|
|
489
489
|
*/
|
|
490
490
|
mustRun?: pulumi.Input<boolean>;
|
|
491
491
|
/**
|
|
492
|
-
* The name of the
|
|
492
|
+
* The name or id of the network to use. You can use `name` or `id` attribute from a `docker.Network` resource.
|
|
493
493
|
*/
|
|
494
494
|
name?: pulumi.Input<string>;
|
|
495
495
|
/**
|
|
@@ -521,7 +521,7 @@ export interface ContainerState {
|
|
|
521
521
|
*/
|
|
522
522
|
publishAllPorts?: pulumi.Input<boolean>;
|
|
523
523
|
/**
|
|
524
|
-
*
|
|
524
|
+
* Whether the mount should be read-only.
|
|
525
525
|
*/
|
|
526
526
|
readOnly?: pulumi.Input<boolean>;
|
|
527
527
|
/**
|
|
@@ -700,7 +700,7 @@ export interface ContainerArgs {
|
|
|
700
700
|
*/
|
|
701
701
|
hostname?: pulumi.Input<string>;
|
|
702
702
|
/**
|
|
703
|
-
*
|
|
703
|
+
* Hostname to add
|
|
704
704
|
*/
|
|
705
705
|
hosts?: pulumi.Input<pulumi.Input<inputs.ContainerHost>[]>;
|
|
706
706
|
/**
|
|
@@ -716,7 +716,7 @@ export interface ContainerArgs {
|
|
|
716
716
|
*/
|
|
717
717
|
ipcMode?: pulumi.Input<string>;
|
|
718
718
|
/**
|
|
719
|
-
* User-defined key/value metadata
|
|
719
|
+
* User-defined key/value metadata.
|
|
720
720
|
*/
|
|
721
721
|
labels?: pulumi.Input<pulumi.Input<inputs.ContainerLabel>[]>;
|
|
722
722
|
/**
|
|
@@ -755,7 +755,7 @@ export interface ContainerArgs {
|
|
|
755
755
|
*/
|
|
756
756
|
mustRun?: pulumi.Input<boolean>;
|
|
757
757
|
/**
|
|
758
|
-
* The name of the
|
|
758
|
+
* The name or id of the network to use. You can use `name` or `id` attribute from a `docker.Network` resource.
|
|
759
759
|
*/
|
|
760
760
|
name?: pulumi.Input<string>;
|
|
761
761
|
/**
|
|
@@ -783,7 +783,7 @@ export interface ContainerArgs {
|
|
|
783
783
|
*/
|
|
784
784
|
publishAllPorts?: pulumi.Input<boolean>;
|
|
785
785
|
/**
|
|
786
|
-
*
|
|
786
|
+
* Whether the mount should be read-only.
|
|
787
787
|
*/
|
|
788
788
|
readOnly?: pulumi.Input<boolean>;
|
|
789
789
|
/**
|
package/package.json
CHANGED
package/plugin.d.ts
CHANGED
|
@@ -79,7 +79,7 @@ export declare class Plugin extends pulumi.CustomResource {
|
|
|
79
79
|
*/
|
|
80
80
|
readonly grantPermissions: pulumi.Output<outputs.PluginGrantPermission[] | undefined>;
|
|
81
81
|
/**
|
|
82
|
-
*
|
|
82
|
+
* The name of the permission
|
|
83
83
|
*/
|
|
84
84
|
readonly name: pulumi.Output<string>;
|
|
85
85
|
/**
|
|
@@ -132,7 +132,7 @@ export interface PluginState {
|
|
|
132
132
|
*/
|
|
133
133
|
grantPermissions?: pulumi.Input<pulumi.Input<inputs.PluginGrantPermission>[]>;
|
|
134
134
|
/**
|
|
135
|
-
*
|
|
135
|
+
* The name of the permission
|
|
136
136
|
*/
|
|
137
137
|
name?: pulumi.Input<string>;
|
|
138
138
|
/**
|
|
@@ -177,7 +177,7 @@ export interface PluginArgs {
|
|
|
177
177
|
*/
|
|
178
178
|
grantPermissions?: pulumi.Input<pulumi.Input<inputs.PluginGrantPermission>[]>;
|
|
179
179
|
/**
|
|
180
|
-
*
|
|
180
|
+
* The name of the permission
|
|
181
181
|
*/
|
|
182
182
|
name?: pulumi.Input<string>;
|
|
183
183
|
}
|
package/remoteImage.d.ts
CHANGED
|
@@ -57,7 +57,7 @@ export declare class RemoteImage extends pulumi.CustomResource {
|
|
|
57
57
|
*/
|
|
58
58
|
readonly build: pulumi.Output<outputs.RemoteImageBuild | undefined>;
|
|
59
59
|
/**
|
|
60
|
-
*
|
|
60
|
+
* Always remove intermediate containers
|
|
61
61
|
*/
|
|
62
62
|
readonly forceRemove: pulumi.Output<boolean | undefined>;
|
|
63
63
|
/**
|
|
@@ -69,11 +69,11 @@ export declare class RemoteImage extends pulumi.CustomResource {
|
|
|
69
69
|
*/
|
|
70
70
|
readonly keepLocally: pulumi.Output<boolean | undefined>;
|
|
71
71
|
/**
|
|
72
|
-
*
|
|
72
|
+
* type of ulimit, e.g. `nofile`
|
|
73
73
|
*/
|
|
74
74
|
readonly name: pulumi.Output<string>;
|
|
75
75
|
/**
|
|
76
|
-
*
|
|
76
|
+
* Set platform if server is multi-platform capable
|
|
77
77
|
*/
|
|
78
78
|
readonly platform: pulumi.Output<string | undefined>;
|
|
79
79
|
/**
|
|
@@ -108,7 +108,7 @@ export interface RemoteImageState {
|
|
|
108
108
|
*/
|
|
109
109
|
build?: pulumi.Input<inputs.RemoteImageBuild>;
|
|
110
110
|
/**
|
|
111
|
-
*
|
|
111
|
+
* Always remove intermediate containers
|
|
112
112
|
*/
|
|
113
113
|
forceRemove?: pulumi.Input<boolean>;
|
|
114
114
|
/**
|
|
@@ -120,11 +120,11 @@ export interface RemoteImageState {
|
|
|
120
120
|
*/
|
|
121
121
|
keepLocally?: pulumi.Input<boolean>;
|
|
122
122
|
/**
|
|
123
|
-
*
|
|
123
|
+
* type of ulimit, e.g. `nofile`
|
|
124
124
|
*/
|
|
125
125
|
name?: pulumi.Input<string>;
|
|
126
126
|
/**
|
|
127
|
-
*
|
|
127
|
+
* Set platform if server is multi-platform capable
|
|
128
128
|
*/
|
|
129
129
|
platform?: pulumi.Input<string>;
|
|
130
130
|
/**
|
|
@@ -151,7 +151,7 @@ export interface RemoteImageArgs {
|
|
|
151
151
|
*/
|
|
152
152
|
build?: pulumi.Input<inputs.RemoteImageBuild>;
|
|
153
153
|
/**
|
|
154
|
-
*
|
|
154
|
+
* Always remove intermediate containers
|
|
155
155
|
*/
|
|
156
156
|
forceRemove?: pulumi.Input<boolean>;
|
|
157
157
|
/**
|
|
@@ -159,11 +159,11 @@ export interface RemoteImageArgs {
|
|
|
159
159
|
*/
|
|
160
160
|
keepLocally?: pulumi.Input<boolean>;
|
|
161
161
|
/**
|
|
162
|
-
*
|
|
162
|
+
* type of ulimit, e.g. `nofile`
|
|
163
163
|
*/
|
|
164
164
|
name: pulumi.Input<string>;
|
|
165
165
|
/**
|
|
166
|
-
*
|
|
166
|
+
* Set platform if server is multi-platform capable
|
|
167
167
|
*/
|
|
168
168
|
platform?: pulumi.Input<string>;
|
|
169
169
|
/**
|
package/service.d.ts
CHANGED
|
@@ -69,11 +69,11 @@ export declare class Service extends pulumi.CustomResource {
|
|
|
69
69
|
*/
|
|
70
70
|
readonly labels: pulumi.Output<outputs.ServiceLabel[]>;
|
|
71
71
|
/**
|
|
72
|
-
*
|
|
72
|
+
* The mode of resolution to use for internal load balancing between tasks
|
|
73
73
|
*/
|
|
74
74
|
readonly mode: pulumi.Output<outputs.ServiceMode>;
|
|
75
75
|
/**
|
|
76
|
-
*
|
|
76
|
+
* A random name for the port
|
|
77
77
|
*/
|
|
78
78
|
readonly name: pulumi.Output<string>;
|
|
79
79
|
/**
|
|
@@ -118,11 +118,11 @@ export interface ServiceState {
|
|
|
118
118
|
*/
|
|
119
119
|
labels?: pulumi.Input<pulumi.Input<inputs.ServiceLabel>[]>;
|
|
120
120
|
/**
|
|
121
|
-
*
|
|
121
|
+
* The mode of resolution to use for internal load balancing between tasks
|
|
122
122
|
*/
|
|
123
123
|
mode?: pulumi.Input<inputs.ServiceMode>;
|
|
124
124
|
/**
|
|
125
|
-
*
|
|
125
|
+
* A random name for the port
|
|
126
126
|
*/
|
|
127
127
|
name?: pulumi.Input<string>;
|
|
128
128
|
/**
|
|
@@ -159,11 +159,11 @@ export interface ServiceArgs {
|
|
|
159
159
|
*/
|
|
160
160
|
labels?: pulumi.Input<pulumi.Input<inputs.ServiceLabel>[]>;
|
|
161
161
|
/**
|
|
162
|
-
*
|
|
162
|
+
* The mode of resolution to use for internal load balancing between tasks
|
|
163
163
|
*/
|
|
164
164
|
mode?: pulumi.Input<inputs.ServiceMode>;
|
|
165
165
|
/**
|
|
166
|
-
*
|
|
166
|
+
* A random name for the port
|
|
167
167
|
*/
|
|
168
168
|
name?: pulumi.Input<string>;
|
|
169
169
|
/**
|
package/types/input.d.ts
CHANGED
|
@@ -107,21 +107,39 @@ export interface ContainerMount {
|
|
|
107
107
|
volumeOptions?: pulumi.Input<inputs.ContainerMountVolumeOptions>;
|
|
108
108
|
}
|
|
109
109
|
export interface ContainerMountBindOptions {
|
|
110
|
+
/**
|
|
111
|
+
* A propagation mode with the value.
|
|
112
|
+
*/
|
|
110
113
|
propagation?: pulumi.Input<string>;
|
|
111
114
|
}
|
|
112
115
|
export interface ContainerMountTmpfsOptions {
|
|
116
|
+
/**
|
|
117
|
+
* The permission mode for the tmpfs mount in an integer.
|
|
118
|
+
*/
|
|
113
119
|
mode?: pulumi.Input<number>;
|
|
120
|
+
/**
|
|
121
|
+
* The size for the tmpfs mount in bytes.
|
|
122
|
+
*/
|
|
114
123
|
sizeBytes?: pulumi.Input<number>;
|
|
115
124
|
}
|
|
116
125
|
export interface ContainerMountVolumeOptions {
|
|
126
|
+
/**
|
|
127
|
+
* Name of the driver to use to create the volume.
|
|
128
|
+
*/
|
|
117
129
|
driverName?: pulumi.Input<string>;
|
|
130
|
+
/**
|
|
131
|
+
* key/value map of driver specific options.
|
|
132
|
+
*/
|
|
118
133
|
driverOptions?: pulumi.Input<{
|
|
119
134
|
[key: string]: pulumi.Input<string>;
|
|
120
135
|
}>;
|
|
121
136
|
/**
|
|
122
|
-
* User-defined key/value metadata
|
|
137
|
+
* User-defined key/value metadata.
|
|
123
138
|
*/
|
|
124
139
|
labels?: pulumi.Input<pulumi.Input<inputs.ContainerMountVolumeOptionsLabel>[]>;
|
|
140
|
+
/**
|
|
141
|
+
* Populate volume with data from the target.
|
|
142
|
+
*/
|
|
125
143
|
noCopy?: pulumi.Input<boolean>;
|
|
126
144
|
}
|
|
127
145
|
export interface ContainerMountVolumeOptionsLabel {
|
|
@@ -490,21 +508,51 @@ export interface RemoteImageBuild {
|
|
|
490
508
|
version?: pulumi.Input<string>;
|
|
491
509
|
}
|
|
492
510
|
export interface RemoteImageBuildAuthConfig {
|
|
511
|
+
/**
|
|
512
|
+
* the auth token
|
|
513
|
+
*/
|
|
493
514
|
auth?: pulumi.Input<string>;
|
|
515
|
+
/**
|
|
516
|
+
* the user emal
|
|
517
|
+
*/
|
|
494
518
|
email?: pulumi.Input<string>;
|
|
519
|
+
/**
|
|
520
|
+
* hostname of the registry
|
|
521
|
+
*/
|
|
495
522
|
hostName: pulumi.Input<string>;
|
|
523
|
+
/**
|
|
524
|
+
* the identity token
|
|
525
|
+
*/
|
|
496
526
|
identityToken?: pulumi.Input<string>;
|
|
527
|
+
/**
|
|
528
|
+
* the registry password
|
|
529
|
+
*/
|
|
497
530
|
password?: pulumi.Input<string>;
|
|
531
|
+
/**
|
|
532
|
+
* the registry token
|
|
533
|
+
*/
|
|
498
534
|
registryToken?: pulumi.Input<string>;
|
|
535
|
+
/**
|
|
536
|
+
* the server address
|
|
537
|
+
*/
|
|
499
538
|
serverAddress?: pulumi.Input<string>;
|
|
539
|
+
/**
|
|
540
|
+
* the registry user name
|
|
541
|
+
*/
|
|
500
542
|
userName?: pulumi.Input<string>;
|
|
501
543
|
}
|
|
502
544
|
export interface RemoteImageBuildUlimit {
|
|
545
|
+
/**
|
|
546
|
+
* soft limit
|
|
547
|
+
*/
|
|
503
548
|
hard: pulumi.Input<number>;
|
|
504
549
|
/**
|
|
505
|
-
*
|
|
550
|
+
* type of ulimit, e.g. `nofile`
|
|
506
551
|
*/
|
|
507
552
|
name: pulumi.Input<string>;
|
|
553
|
+
/**
|
|
554
|
+
* hard limit
|
|
555
|
+
*/
|
|
508
556
|
soft: pulumi.Input<number>;
|
|
509
557
|
}
|
|
510
558
|
export interface SecretLabel {
|
|
@@ -553,12 +601,24 @@ export interface ServiceEndpointSpec {
|
|
|
553
601
|
}
|
|
554
602
|
export interface ServiceEndpointSpecPort {
|
|
555
603
|
/**
|
|
556
|
-
*
|
|
604
|
+
* A random name for the port
|
|
557
605
|
*/
|
|
558
606
|
name?: pulumi.Input<string>;
|
|
607
|
+
/**
|
|
608
|
+
* Rrepresents the protocol of a port: `tcp`, `udp` or `sctp`. Defaults to `tcp`.
|
|
609
|
+
*/
|
|
559
610
|
protocol?: pulumi.Input<string>;
|
|
611
|
+
/**
|
|
612
|
+
* Represents the mode in which the port is to be published: 'ingress' or 'host'. Defaults to `ingress`.
|
|
613
|
+
*/
|
|
560
614
|
publishMode?: pulumi.Input<string>;
|
|
615
|
+
/**
|
|
616
|
+
* The port on the swarm hosts
|
|
617
|
+
*/
|
|
561
618
|
publishedPort?: pulumi.Input<number>;
|
|
619
|
+
/**
|
|
620
|
+
* The port inside the container
|
|
621
|
+
*/
|
|
562
622
|
targetPort: pulumi.Input<number>;
|
|
563
623
|
}
|
|
564
624
|
export interface ServiceLabel {
|
|
@@ -582,6 +642,9 @@ export interface ServiceMode {
|
|
|
582
642
|
replicated?: pulumi.Input<inputs.ServiceModeReplicated>;
|
|
583
643
|
}
|
|
584
644
|
export interface ServiceModeReplicated {
|
|
645
|
+
/**
|
|
646
|
+
* The amount of replicas of the service. Defaults to `1`
|
|
647
|
+
*/
|
|
585
648
|
replicas?: pulumi.Input<number>;
|
|
586
649
|
}
|
|
587
650
|
export interface ServiceRollbackConfig {
|
|
@@ -645,57 +708,165 @@ export interface ServiceTaskSpec {
|
|
|
645
708
|
runtime?: pulumi.Input<string>;
|
|
646
709
|
}
|
|
647
710
|
export interface ServiceTaskSpecContainerSpec {
|
|
711
|
+
/**
|
|
712
|
+
* Arguments to the command
|
|
713
|
+
*/
|
|
648
714
|
args?: pulumi.Input<pulumi.Input<string>[]>;
|
|
715
|
+
/**
|
|
716
|
+
* The command/entrypoint to be run in the image. According to the [docker cli](https://github.com/docker/cli/blob/v20.10.7/cli/command/service/opts.go#L705) the override of the entrypoint is also passed to the `command` property and there is no `entrypoint` attribute in the `ContainerSpec` of the service.
|
|
717
|
+
*/
|
|
649
718
|
commands?: pulumi.Input<pulumi.Input<string>[]>;
|
|
719
|
+
/**
|
|
720
|
+
* References to zero or more configs that will be exposed to the service
|
|
721
|
+
*/
|
|
650
722
|
configs?: pulumi.Input<pulumi.Input<inputs.ServiceTaskSpecContainerSpecConfig>[]>;
|
|
723
|
+
/**
|
|
724
|
+
* The working directory for commands to run in
|
|
725
|
+
*/
|
|
651
726
|
dir?: pulumi.Input<string>;
|
|
727
|
+
/**
|
|
728
|
+
* Specification for DNS related configurations in resolver configuration file (`resolv.conf`)
|
|
729
|
+
*/
|
|
652
730
|
dnsConfig?: pulumi.Input<inputs.ServiceTaskSpecContainerSpecDnsConfig>;
|
|
731
|
+
/**
|
|
732
|
+
* A list of environment variables in the form VAR="value"
|
|
733
|
+
*/
|
|
653
734
|
env?: pulumi.Input<{
|
|
654
735
|
[key: string]: pulumi.Input<string>;
|
|
655
736
|
}>;
|
|
737
|
+
/**
|
|
738
|
+
* A list of additional groups that the container process will run as
|
|
739
|
+
*/
|
|
656
740
|
groups?: pulumi.Input<pulumi.Input<string>[]>;
|
|
741
|
+
/**
|
|
742
|
+
* A test to perform to check that the container is healthy
|
|
743
|
+
*/
|
|
657
744
|
healthcheck?: pulumi.Input<inputs.ServiceTaskSpecContainerSpecHealthcheck>;
|
|
745
|
+
/**
|
|
746
|
+
* The hostname to use for the container, as a valid RFC 1123 hostname
|
|
747
|
+
*/
|
|
658
748
|
hostname?: pulumi.Input<string>;
|
|
749
|
+
/**
|
|
750
|
+
* A list of hostname/IP mappings to add to the container's hosts file
|
|
751
|
+
*/
|
|
659
752
|
hosts?: pulumi.Input<pulumi.Input<inputs.ServiceTaskSpecContainerSpecHost>[]>;
|
|
753
|
+
/**
|
|
754
|
+
* The image name to use for the containers of the service, like `nginx:1.17.6`. Also use the data-source or resource of `docker.RemoteImage` with the `repoDigest` or `docker.RegistryImage` with the `name` attribute for this, as shown in the examples.
|
|
755
|
+
*/
|
|
660
756
|
image: pulumi.Input<string>;
|
|
757
|
+
/**
|
|
758
|
+
* Isolation technology of the containers running the service. (Windows only). Defaults to `default`.
|
|
759
|
+
*/
|
|
661
760
|
isolation?: pulumi.Input<string>;
|
|
662
761
|
/**
|
|
663
762
|
* User-defined key/value metadata
|
|
664
763
|
*/
|
|
665
764
|
labels?: pulumi.Input<pulumi.Input<inputs.ServiceTaskSpecContainerSpecLabel>[]>;
|
|
765
|
+
/**
|
|
766
|
+
* Specification for mounts to be added to containers created as part of the service
|
|
767
|
+
*/
|
|
666
768
|
mounts?: pulumi.Input<pulumi.Input<inputs.ServiceTaskSpecContainerSpecMount>[]>;
|
|
769
|
+
/**
|
|
770
|
+
* Security options for the container
|
|
771
|
+
*/
|
|
667
772
|
privileges?: pulumi.Input<inputs.ServiceTaskSpecContainerSpecPrivileges>;
|
|
773
|
+
/**
|
|
774
|
+
* Whether the mount should be read-only
|
|
775
|
+
*/
|
|
668
776
|
readOnly?: pulumi.Input<boolean>;
|
|
777
|
+
/**
|
|
778
|
+
* References to zero or more secrets that will be exposed to the service
|
|
779
|
+
*/
|
|
669
780
|
secrets?: pulumi.Input<pulumi.Input<inputs.ServiceTaskSpecContainerSpecSecret>[]>;
|
|
781
|
+
/**
|
|
782
|
+
* Amount of time to wait for the container to terminate before forcefully removing it (ms|s|m|h). If not specified or '0s' the destroy will not check if all tasks/containers of the service terminate.
|
|
783
|
+
*/
|
|
670
784
|
stopGracePeriod?: pulumi.Input<string>;
|
|
785
|
+
/**
|
|
786
|
+
* Signal to stop the container
|
|
787
|
+
*/
|
|
671
788
|
stopSignal?: pulumi.Input<string>;
|
|
789
|
+
/**
|
|
790
|
+
* Sysctls config (Linux only)
|
|
791
|
+
*/
|
|
672
792
|
sysctl?: pulumi.Input<{
|
|
673
793
|
[key: string]: any;
|
|
674
794
|
}>;
|
|
795
|
+
/**
|
|
796
|
+
* SELinux user label
|
|
797
|
+
*/
|
|
675
798
|
user?: pulumi.Input<string>;
|
|
676
799
|
}
|
|
677
800
|
export interface ServiceTaskSpecContainerSpecConfig {
|
|
801
|
+
/**
|
|
802
|
+
* ID of the specific config that we're referencing
|
|
803
|
+
*/
|
|
678
804
|
configId: pulumi.Input<string>;
|
|
805
|
+
/**
|
|
806
|
+
* Name of the config that this references, but this is just provided for lookup/display purposes. The config in the reference will be identified by its ID
|
|
807
|
+
*/
|
|
679
808
|
configName?: pulumi.Input<string>;
|
|
809
|
+
/**
|
|
810
|
+
* Represents the file GID. Defaults to `0`.
|
|
811
|
+
*/
|
|
680
812
|
fileGid?: pulumi.Input<string>;
|
|
813
|
+
/**
|
|
814
|
+
* Represents represents the FileMode of the file. Defaults to `0o444`.
|
|
815
|
+
*/
|
|
681
816
|
fileMode?: pulumi.Input<number>;
|
|
817
|
+
/**
|
|
818
|
+
* Represents the final filename in the filesystem
|
|
819
|
+
*/
|
|
682
820
|
fileName: pulumi.Input<string>;
|
|
821
|
+
/**
|
|
822
|
+
* Represents the file UID. Defaults to `0`.
|
|
823
|
+
*/
|
|
683
824
|
fileUid?: pulumi.Input<string>;
|
|
684
825
|
}
|
|
685
826
|
export interface ServiceTaskSpecContainerSpecDnsConfig {
|
|
827
|
+
/**
|
|
828
|
+
* The IP addresses of the name servers
|
|
829
|
+
*/
|
|
686
830
|
nameservers: pulumi.Input<pulumi.Input<string>[]>;
|
|
831
|
+
/**
|
|
832
|
+
* A list of internal resolver variables to be modified (e.g., `debug`, `ndots:3`, etc.)
|
|
833
|
+
*/
|
|
687
834
|
options?: pulumi.Input<pulumi.Input<string>[]>;
|
|
835
|
+
/**
|
|
836
|
+
* A search list for host-name lookup
|
|
837
|
+
*/
|
|
688
838
|
searches?: pulumi.Input<pulumi.Input<string>[]>;
|
|
689
839
|
}
|
|
690
840
|
export interface ServiceTaskSpecContainerSpecHealthcheck {
|
|
841
|
+
/**
|
|
842
|
+
* Time between running the check (ms|s|m|h). Defaults to `0s`.
|
|
843
|
+
*/
|
|
691
844
|
interval?: pulumi.Input<string>;
|
|
845
|
+
/**
|
|
846
|
+
* Consecutive failures needed to report unhealthy. Defaults to `0`
|
|
847
|
+
*/
|
|
692
848
|
retries?: pulumi.Input<number>;
|
|
849
|
+
/**
|
|
850
|
+
* Start period for the container to initialize before counting retries towards unstable (ms|s|m|h). Defaults to `0s`.
|
|
851
|
+
*/
|
|
693
852
|
startPeriod?: pulumi.Input<string>;
|
|
853
|
+
/**
|
|
854
|
+
* The test to perform as list
|
|
855
|
+
*/
|
|
694
856
|
tests: pulumi.Input<pulumi.Input<string>[]>;
|
|
857
|
+
/**
|
|
858
|
+
* The timeout of the service to reach the desired state `(s|m)`. Defaults to `3m`
|
|
859
|
+
*/
|
|
695
860
|
timeout?: pulumi.Input<string>;
|
|
696
861
|
}
|
|
697
862
|
export interface ServiceTaskSpecContainerSpecHost {
|
|
863
|
+
/**
|
|
864
|
+
* The name of the host
|
|
865
|
+
*/
|
|
698
866
|
host: pulumi.Input<string>;
|
|
867
|
+
/**
|
|
868
|
+
* The ip of the host
|
|
869
|
+
*/
|
|
699
870
|
ip: pulumi.Input<string>;
|
|
700
871
|
}
|
|
701
872
|
export interface ServiceTaskSpecContainerSpecLabel {
|
|
@@ -709,26 +880,59 @@ export interface ServiceTaskSpecContainerSpecLabel {
|
|
|
709
880
|
value: pulumi.Input<string>;
|
|
710
881
|
}
|
|
711
882
|
export interface ServiceTaskSpecContainerSpecMount {
|
|
883
|
+
/**
|
|
884
|
+
* Optional configuration for the bind type
|
|
885
|
+
*/
|
|
712
886
|
bindOptions?: pulumi.Input<inputs.ServiceTaskSpecContainerSpecMountBindOptions>;
|
|
887
|
+
/**
|
|
888
|
+
* Whether the mount should be read-only
|
|
889
|
+
*/
|
|
713
890
|
readOnly?: pulumi.Input<boolean>;
|
|
891
|
+
/**
|
|
892
|
+
* Mount source (e.g. a volume name, a host path)
|
|
893
|
+
*/
|
|
714
894
|
source?: pulumi.Input<string>;
|
|
895
|
+
/**
|
|
896
|
+
* Container path
|
|
897
|
+
*/
|
|
715
898
|
target: pulumi.Input<string>;
|
|
899
|
+
/**
|
|
900
|
+
* Optional configuration for the tmpfs type
|
|
901
|
+
*/
|
|
716
902
|
tmpfsOptions?: pulumi.Input<inputs.ServiceTaskSpecContainerSpecMountTmpfsOptions>;
|
|
903
|
+
/**
|
|
904
|
+
* The mount type
|
|
905
|
+
*/
|
|
717
906
|
type: pulumi.Input<string>;
|
|
907
|
+
/**
|
|
908
|
+
* Optional configuration for the volume type
|
|
909
|
+
*/
|
|
718
910
|
volumeOptions?: pulumi.Input<inputs.ServiceTaskSpecContainerSpecMountVolumeOptions>;
|
|
719
911
|
}
|
|
720
912
|
export interface ServiceTaskSpecContainerSpecMountBindOptions {
|
|
913
|
+
/**
|
|
914
|
+
* Bind propagation refers to whether or not mounts created within a given bind-mount or named volume can be propagated to replicas of that mount. See the [docs](https://docs.docker.com/storage/bind-mounts/#configure-bind-propagation) for details. Defaults to `rprivate`
|
|
915
|
+
*/
|
|
721
916
|
propagation?: pulumi.Input<string>;
|
|
722
917
|
}
|
|
723
918
|
export interface ServiceTaskSpecContainerSpecMountTmpfsOptions {
|
|
724
919
|
/**
|
|
725
|
-
*
|
|
920
|
+
* The mode of resolution to use for internal load balancing between tasks
|
|
726
921
|
*/
|
|
727
922
|
mode?: pulumi.Input<number>;
|
|
923
|
+
/**
|
|
924
|
+
* The size for the tmpfs mount in bytes
|
|
925
|
+
*/
|
|
728
926
|
sizeBytes?: pulumi.Input<number>;
|
|
729
927
|
}
|
|
730
928
|
export interface ServiceTaskSpecContainerSpecMountVolumeOptions {
|
|
929
|
+
/**
|
|
930
|
+
* Name of the driver to use to create the volume
|
|
931
|
+
*/
|
|
731
932
|
driverName?: pulumi.Input<string>;
|
|
933
|
+
/**
|
|
934
|
+
* key/value map of driver specific options
|
|
935
|
+
*/
|
|
732
936
|
driverOptions?: pulumi.Input<{
|
|
733
937
|
[key: string]: pulumi.Input<string>;
|
|
734
938
|
}>;
|
|
@@ -736,6 +940,9 @@ export interface ServiceTaskSpecContainerSpecMountVolumeOptions {
|
|
|
736
940
|
* User-defined key/value metadata
|
|
737
941
|
*/
|
|
738
942
|
labels?: pulumi.Input<pulumi.Input<inputs.ServiceTaskSpecContainerSpecMountVolumeOptionsLabel>[]>;
|
|
943
|
+
/**
|
|
944
|
+
* Populate volume with data from the target
|
|
945
|
+
*/
|
|
739
946
|
noCopy?: pulumi.Input<boolean>;
|
|
740
947
|
}
|
|
741
948
|
export interface ServiceTaskSpecContainerSpecMountVolumeOptionsLabel {
|
|
@@ -749,76 +956,187 @@ export interface ServiceTaskSpecContainerSpecMountVolumeOptionsLabel {
|
|
|
749
956
|
value: pulumi.Input<string>;
|
|
750
957
|
}
|
|
751
958
|
export interface ServiceTaskSpecContainerSpecPrivileges {
|
|
959
|
+
/**
|
|
960
|
+
* CredentialSpec for managed service account (Windows only)
|
|
961
|
+
*/
|
|
752
962
|
credentialSpec?: pulumi.Input<inputs.ServiceTaskSpecContainerSpecPrivilegesCredentialSpec>;
|
|
963
|
+
/**
|
|
964
|
+
* SELinux labels of the container
|
|
965
|
+
*/
|
|
753
966
|
seLinuxContext?: pulumi.Input<inputs.ServiceTaskSpecContainerSpecPrivilegesSeLinuxContext>;
|
|
754
967
|
}
|
|
755
968
|
export interface ServiceTaskSpecContainerSpecPrivilegesCredentialSpec {
|
|
969
|
+
/**
|
|
970
|
+
* Load credential spec from this file
|
|
971
|
+
*/
|
|
756
972
|
file?: pulumi.Input<string>;
|
|
973
|
+
/**
|
|
974
|
+
* Load credential spec from this value in the Windows registry
|
|
975
|
+
*/
|
|
757
976
|
registry?: pulumi.Input<string>;
|
|
758
977
|
}
|
|
759
978
|
export interface ServiceTaskSpecContainerSpecPrivilegesSeLinuxContext {
|
|
979
|
+
/**
|
|
980
|
+
* Disable SELinux
|
|
981
|
+
*/
|
|
760
982
|
disable?: pulumi.Input<boolean>;
|
|
983
|
+
/**
|
|
984
|
+
* SELinux level label
|
|
985
|
+
*/
|
|
761
986
|
level?: pulumi.Input<string>;
|
|
987
|
+
/**
|
|
988
|
+
* SELinux role label
|
|
989
|
+
*/
|
|
762
990
|
role?: pulumi.Input<string>;
|
|
991
|
+
/**
|
|
992
|
+
* The mount type
|
|
993
|
+
*/
|
|
763
994
|
type?: pulumi.Input<string>;
|
|
995
|
+
/**
|
|
996
|
+
* SELinux user label
|
|
997
|
+
*/
|
|
764
998
|
user?: pulumi.Input<string>;
|
|
765
999
|
}
|
|
766
1000
|
export interface ServiceTaskSpecContainerSpecSecret {
|
|
1001
|
+
/**
|
|
1002
|
+
* Represents the file GID. Defaults to `0`.
|
|
1003
|
+
*/
|
|
767
1004
|
fileGid?: pulumi.Input<string>;
|
|
1005
|
+
/**
|
|
1006
|
+
* Represents represents the FileMode of the file. Defaults to `0o444`.
|
|
1007
|
+
*/
|
|
768
1008
|
fileMode?: pulumi.Input<number>;
|
|
1009
|
+
/**
|
|
1010
|
+
* Represents the final filename in the filesystem
|
|
1011
|
+
*/
|
|
769
1012
|
fileName: pulumi.Input<string>;
|
|
1013
|
+
/**
|
|
1014
|
+
* Represents the file UID. Defaults to `0`.
|
|
1015
|
+
*/
|
|
770
1016
|
fileUid?: pulumi.Input<string>;
|
|
1017
|
+
/**
|
|
1018
|
+
* ID of the specific secret that we're referencing
|
|
1019
|
+
*/
|
|
771
1020
|
secretId: pulumi.Input<string>;
|
|
1021
|
+
/**
|
|
1022
|
+
* Name of the secret that this references, but this is just provided for lookup/display purposes. The config in the reference will be identified by its ID
|
|
1023
|
+
*/
|
|
772
1024
|
secretName?: pulumi.Input<string>;
|
|
773
1025
|
}
|
|
774
1026
|
export interface ServiceTaskSpecLogDriver {
|
|
775
1027
|
/**
|
|
776
|
-
*
|
|
1028
|
+
* A random name for the port
|
|
777
1029
|
*/
|
|
778
1030
|
name: pulumi.Input<string>;
|
|
1031
|
+
/**
|
|
1032
|
+
* A list of internal resolver variables to be modified (e.g., `debug`, `ndots:3`, etc.)
|
|
1033
|
+
*/
|
|
779
1034
|
options?: pulumi.Input<{
|
|
780
1035
|
[key: string]: pulumi.Input<string>;
|
|
781
1036
|
}>;
|
|
782
1037
|
}
|
|
783
1038
|
export interface ServiceTaskSpecNetworksAdvanced {
|
|
1039
|
+
/**
|
|
1040
|
+
* The network aliases of the container in the specific network.
|
|
1041
|
+
*/
|
|
784
1042
|
aliases?: pulumi.Input<pulumi.Input<string>[]>;
|
|
1043
|
+
/**
|
|
1044
|
+
* An array of driver options for the network, e.g. `opts1=value`
|
|
1045
|
+
*/
|
|
785
1046
|
driverOpts?: pulumi.Input<pulumi.Input<string>[]>;
|
|
786
1047
|
/**
|
|
787
|
-
*
|
|
1048
|
+
* A random name for the port
|
|
788
1049
|
*/
|
|
789
1050
|
name: pulumi.Input<string>;
|
|
790
1051
|
}
|
|
791
1052
|
export interface ServiceTaskSpecPlacement {
|
|
1053
|
+
/**
|
|
1054
|
+
* An array of constraints. e.g.: `node.role==manager`
|
|
1055
|
+
*/
|
|
792
1056
|
constraints?: pulumi.Input<pulumi.Input<string>[]>;
|
|
1057
|
+
/**
|
|
1058
|
+
* Maximum number of replicas for per node (default value is `0`, which is unlimited)
|
|
1059
|
+
*/
|
|
793
1060
|
maxReplicas?: pulumi.Input<number>;
|
|
1061
|
+
/**
|
|
1062
|
+
* Platforms stores all the platforms that the service's image can run on
|
|
1063
|
+
*/
|
|
794
1064
|
platforms?: pulumi.Input<pulumi.Input<inputs.ServiceTaskSpecPlacementPlatform>[]>;
|
|
1065
|
+
/**
|
|
1066
|
+
* Preferences provide a way to make the scheduler aware of factors such as topology. They are provided in order from highest to lowest precedence, e.g.: `spread=node.role.manager`
|
|
1067
|
+
*/
|
|
795
1068
|
prefs?: pulumi.Input<pulumi.Input<string>[]>;
|
|
796
1069
|
}
|
|
797
1070
|
export interface ServiceTaskSpecPlacementPlatform {
|
|
1071
|
+
/**
|
|
1072
|
+
* The architecture, e.g. `amd64`
|
|
1073
|
+
*/
|
|
798
1074
|
architecture: pulumi.Input<string>;
|
|
1075
|
+
/**
|
|
1076
|
+
* The operation system, e.g. `linux`
|
|
1077
|
+
*/
|
|
799
1078
|
os: pulumi.Input<string>;
|
|
800
1079
|
}
|
|
801
1080
|
export interface ServiceTaskSpecResources {
|
|
1081
|
+
/**
|
|
1082
|
+
* Describes the resources which can be advertised by a node and requested by a task
|
|
1083
|
+
*/
|
|
802
1084
|
limits?: pulumi.Input<inputs.ServiceTaskSpecResourcesLimits>;
|
|
1085
|
+
/**
|
|
1086
|
+
* An object describing the resources which can be advertised by a node and requested by a task
|
|
1087
|
+
*/
|
|
803
1088
|
reservation?: pulumi.Input<inputs.ServiceTaskSpecResourcesReservation>;
|
|
804
1089
|
}
|
|
805
1090
|
export interface ServiceTaskSpecResourcesLimits {
|
|
1091
|
+
/**
|
|
1092
|
+
* The amounf of memory in bytes the container allocates
|
|
1093
|
+
*/
|
|
806
1094
|
memoryBytes?: pulumi.Input<number>;
|
|
1095
|
+
/**
|
|
1096
|
+
* CPU shares in units of `1/1e9` (or `10^-9`) of the CPU. Should be at least `1000000`
|
|
1097
|
+
*/
|
|
807
1098
|
nanoCpus?: pulumi.Input<number>;
|
|
808
1099
|
}
|
|
809
1100
|
export interface ServiceTaskSpecResourcesReservation {
|
|
1101
|
+
/**
|
|
1102
|
+
* User-defined resources can be either Integer resources (e.g, `SSD=3`) or String resources (e.g, GPU=UUID1)
|
|
1103
|
+
*/
|
|
810
1104
|
genericResources?: pulumi.Input<inputs.ServiceTaskSpecResourcesReservationGenericResources>;
|
|
1105
|
+
/**
|
|
1106
|
+
* The amounf of memory in bytes the container allocates
|
|
1107
|
+
*/
|
|
811
1108
|
memoryBytes?: pulumi.Input<number>;
|
|
1109
|
+
/**
|
|
1110
|
+
* CPU shares in units of `1/1e9` (or `10^-9`) of the CPU. Should be at least `1000000`
|
|
1111
|
+
*/
|
|
812
1112
|
nanoCpus?: pulumi.Input<number>;
|
|
813
1113
|
}
|
|
814
1114
|
export interface ServiceTaskSpecResourcesReservationGenericResources {
|
|
1115
|
+
/**
|
|
1116
|
+
* The Integer resources
|
|
1117
|
+
*/
|
|
815
1118
|
discreteResourcesSpecs?: pulumi.Input<pulumi.Input<string>[]>;
|
|
1119
|
+
/**
|
|
1120
|
+
* The String resources
|
|
1121
|
+
*/
|
|
816
1122
|
namedResourcesSpecs?: pulumi.Input<pulumi.Input<string>[]>;
|
|
817
1123
|
}
|
|
818
1124
|
export interface ServiceTaskSpecRestartPolicy {
|
|
1125
|
+
/**
|
|
1126
|
+
* Condition for restart
|
|
1127
|
+
*/
|
|
819
1128
|
condition?: pulumi.Input<string>;
|
|
1129
|
+
/**
|
|
1130
|
+
* The interval to check if the desired state is reached `(ms|s)`. Defaults to `7s`.
|
|
1131
|
+
*/
|
|
820
1132
|
delay?: pulumi.Input<string>;
|
|
1133
|
+
/**
|
|
1134
|
+
* Maximum attempts to restart a given container before giving up (default value is `0`, which is ignored)
|
|
1135
|
+
*/
|
|
821
1136
|
maxAttempts?: pulumi.Input<number>;
|
|
1137
|
+
/**
|
|
1138
|
+
* The time window used to evaluate the restart policy (default value is `0`, which is unbounded) (ms|s|m|h)
|
|
1139
|
+
*/
|
|
822
1140
|
window?: pulumi.Input<string>;
|
|
823
1141
|
}
|
|
824
1142
|
export interface ServiceUpdateConfig {
|
package/types/output.d.ts
CHANGED
|
@@ -96,21 +96,39 @@ export interface ContainerMount {
|
|
|
96
96
|
volumeOptions?: outputs.ContainerMountVolumeOptions;
|
|
97
97
|
}
|
|
98
98
|
export interface ContainerMountBindOptions {
|
|
99
|
+
/**
|
|
100
|
+
* A propagation mode with the value.
|
|
101
|
+
*/
|
|
99
102
|
propagation?: string;
|
|
100
103
|
}
|
|
101
104
|
export interface ContainerMountTmpfsOptions {
|
|
105
|
+
/**
|
|
106
|
+
* The permission mode for the tmpfs mount in an integer.
|
|
107
|
+
*/
|
|
102
108
|
mode?: number;
|
|
109
|
+
/**
|
|
110
|
+
* The size for the tmpfs mount in bytes.
|
|
111
|
+
*/
|
|
103
112
|
sizeBytes?: number;
|
|
104
113
|
}
|
|
105
114
|
export interface ContainerMountVolumeOptions {
|
|
115
|
+
/**
|
|
116
|
+
* Name of the driver to use to create the volume.
|
|
117
|
+
*/
|
|
106
118
|
driverName?: string;
|
|
119
|
+
/**
|
|
120
|
+
* key/value map of driver specific options.
|
|
121
|
+
*/
|
|
107
122
|
driverOptions?: {
|
|
108
123
|
[key: string]: string;
|
|
109
124
|
};
|
|
110
125
|
/**
|
|
111
|
-
* User-defined key/value metadata
|
|
126
|
+
* User-defined key/value metadata.
|
|
112
127
|
*/
|
|
113
128
|
labels?: outputs.ContainerMountVolumeOptionsLabel[];
|
|
129
|
+
/**
|
|
130
|
+
* Populate volume with data from the target.
|
|
131
|
+
*/
|
|
114
132
|
noCopy?: boolean;
|
|
115
133
|
}
|
|
116
134
|
export interface ContainerMountVolumeOptionsLabel {
|
|
@@ -427,21 +445,51 @@ export interface RemoteImageBuild {
|
|
|
427
445
|
version?: string;
|
|
428
446
|
}
|
|
429
447
|
export interface RemoteImageBuildAuthConfig {
|
|
448
|
+
/**
|
|
449
|
+
* the auth token
|
|
450
|
+
*/
|
|
430
451
|
auth?: string;
|
|
452
|
+
/**
|
|
453
|
+
* the user emal
|
|
454
|
+
*/
|
|
431
455
|
email?: string;
|
|
456
|
+
/**
|
|
457
|
+
* hostname of the registry
|
|
458
|
+
*/
|
|
432
459
|
hostName: string;
|
|
460
|
+
/**
|
|
461
|
+
* the identity token
|
|
462
|
+
*/
|
|
433
463
|
identityToken?: string;
|
|
464
|
+
/**
|
|
465
|
+
* the registry password
|
|
466
|
+
*/
|
|
434
467
|
password?: string;
|
|
468
|
+
/**
|
|
469
|
+
* the registry token
|
|
470
|
+
*/
|
|
435
471
|
registryToken?: string;
|
|
472
|
+
/**
|
|
473
|
+
* the server address
|
|
474
|
+
*/
|
|
436
475
|
serverAddress?: string;
|
|
476
|
+
/**
|
|
477
|
+
* the registry user name
|
|
478
|
+
*/
|
|
437
479
|
userName?: string;
|
|
438
480
|
}
|
|
439
481
|
export interface RemoteImageBuildUlimit {
|
|
482
|
+
/**
|
|
483
|
+
* soft limit
|
|
484
|
+
*/
|
|
440
485
|
hard: number;
|
|
441
486
|
/**
|
|
442
|
-
*
|
|
487
|
+
* type of ulimit, e.g. `nofile`
|
|
443
488
|
*/
|
|
444
489
|
name: string;
|
|
490
|
+
/**
|
|
491
|
+
* hard limit
|
|
492
|
+
*/
|
|
445
493
|
soft: number;
|
|
446
494
|
}
|
|
447
495
|
export interface SecretLabel {
|
|
@@ -490,12 +538,24 @@ export interface ServiceEndpointSpec {
|
|
|
490
538
|
}
|
|
491
539
|
export interface ServiceEndpointSpecPort {
|
|
492
540
|
/**
|
|
493
|
-
*
|
|
541
|
+
* A random name for the port
|
|
494
542
|
*/
|
|
495
543
|
name?: string;
|
|
544
|
+
/**
|
|
545
|
+
* Rrepresents the protocol of a port: `tcp`, `udp` or `sctp`. Defaults to `tcp`.
|
|
546
|
+
*/
|
|
496
547
|
protocol?: string;
|
|
548
|
+
/**
|
|
549
|
+
* Represents the mode in which the port is to be published: 'ingress' or 'host'. Defaults to `ingress`.
|
|
550
|
+
*/
|
|
497
551
|
publishMode?: string;
|
|
552
|
+
/**
|
|
553
|
+
* The port on the swarm hosts
|
|
554
|
+
*/
|
|
498
555
|
publishedPort: number;
|
|
556
|
+
/**
|
|
557
|
+
* The port inside the container
|
|
558
|
+
*/
|
|
499
559
|
targetPort: number;
|
|
500
560
|
}
|
|
501
561
|
export interface ServiceLabel {
|
|
@@ -519,6 +579,9 @@ export interface ServiceMode {
|
|
|
519
579
|
replicated: outputs.ServiceModeReplicated;
|
|
520
580
|
}
|
|
521
581
|
export interface ServiceModeReplicated {
|
|
582
|
+
/**
|
|
583
|
+
* The amount of replicas of the service. Defaults to `1`
|
|
584
|
+
*/
|
|
522
585
|
replicas?: number;
|
|
523
586
|
}
|
|
524
587
|
export interface ServiceRollbackConfig {
|
|
@@ -582,57 +645,165 @@ export interface ServiceTaskSpec {
|
|
|
582
645
|
runtime: string;
|
|
583
646
|
}
|
|
584
647
|
export interface ServiceTaskSpecContainerSpec {
|
|
648
|
+
/**
|
|
649
|
+
* Arguments to the command
|
|
650
|
+
*/
|
|
585
651
|
args?: string[];
|
|
652
|
+
/**
|
|
653
|
+
* The command/entrypoint to be run in the image. According to the [docker cli](https://github.com/docker/cli/blob/v20.10.7/cli/command/service/opts.go#L705) the override of the entrypoint is also passed to the `command` property and there is no `entrypoint` attribute in the `ContainerSpec` of the service.
|
|
654
|
+
*/
|
|
586
655
|
commands?: string[];
|
|
656
|
+
/**
|
|
657
|
+
* References to zero or more configs that will be exposed to the service
|
|
658
|
+
*/
|
|
587
659
|
configs?: outputs.ServiceTaskSpecContainerSpecConfig[];
|
|
660
|
+
/**
|
|
661
|
+
* The working directory for commands to run in
|
|
662
|
+
*/
|
|
588
663
|
dir?: string;
|
|
664
|
+
/**
|
|
665
|
+
* Specification for DNS related configurations in resolver configuration file (`resolv.conf`)
|
|
666
|
+
*/
|
|
589
667
|
dnsConfig: outputs.ServiceTaskSpecContainerSpecDnsConfig;
|
|
668
|
+
/**
|
|
669
|
+
* A list of environment variables in the form VAR="value"
|
|
670
|
+
*/
|
|
590
671
|
env?: {
|
|
591
672
|
[key: string]: string;
|
|
592
673
|
};
|
|
674
|
+
/**
|
|
675
|
+
* A list of additional groups that the container process will run as
|
|
676
|
+
*/
|
|
593
677
|
groups?: string[];
|
|
678
|
+
/**
|
|
679
|
+
* A test to perform to check that the container is healthy
|
|
680
|
+
*/
|
|
594
681
|
healthcheck: outputs.ServiceTaskSpecContainerSpecHealthcheck;
|
|
682
|
+
/**
|
|
683
|
+
* The hostname to use for the container, as a valid RFC 1123 hostname
|
|
684
|
+
*/
|
|
595
685
|
hostname?: string;
|
|
686
|
+
/**
|
|
687
|
+
* A list of hostname/IP mappings to add to the container's hosts file
|
|
688
|
+
*/
|
|
596
689
|
hosts?: outputs.ServiceTaskSpecContainerSpecHost[];
|
|
690
|
+
/**
|
|
691
|
+
* The image name to use for the containers of the service, like `nginx:1.17.6`. Also use the data-source or resource of `docker.RemoteImage` with the `repoDigest` or `docker.RegistryImage` with the `name` attribute for this, as shown in the examples.
|
|
692
|
+
*/
|
|
597
693
|
image: string;
|
|
694
|
+
/**
|
|
695
|
+
* Isolation technology of the containers running the service. (Windows only). Defaults to `default`.
|
|
696
|
+
*/
|
|
598
697
|
isolation?: string;
|
|
599
698
|
/**
|
|
600
699
|
* User-defined key/value metadata
|
|
601
700
|
*/
|
|
602
701
|
labels?: outputs.ServiceTaskSpecContainerSpecLabel[];
|
|
702
|
+
/**
|
|
703
|
+
* Specification for mounts to be added to containers created as part of the service
|
|
704
|
+
*/
|
|
603
705
|
mounts?: outputs.ServiceTaskSpecContainerSpecMount[];
|
|
706
|
+
/**
|
|
707
|
+
* Security options for the container
|
|
708
|
+
*/
|
|
604
709
|
privileges?: outputs.ServiceTaskSpecContainerSpecPrivileges;
|
|
710
|
+
/**
|
|
711
|
+
* Whether the mount should be read-only
|
|
712
|
+
*/
|
|
605
713
|
readOnly?: boolean;
|
|
714
|
+
/**
|
|
715
|
+
* References to zero or more secrets that will be exposed to the service
|
|
716
|
+
*/
|
|
606
717
|
secrets?: outputs.ServiceTaskSpecContainerSpecSecret[];
|
|
718
|
+
/**
|
|
719
|
+
* Amount of time to wait for the container to terminate before forcefully removing it (ms|s|m|h). If not specified or '0s' the destroy will not check if all tasks/containers of the service terminate.
|
|
720
|
+
*/
|
|
607
721
|
stopGracePeriod: string;
|
|
722
|
+
/**
|
|
723
|
+
* Signal to stop the container
|
|
724
|
+
*/
|
|
608
725
|
stopSignal?: string;
|
|
726
|
+
/**
|
|
727
|
+
* Sysctls config (Linux only)
|
|
728
|
+
*/
|
|
609
729
|
sysctl?: {
|
|
610
730
|
[key: string]: any;
|
|
611
731
|
};
|
|
732
|
+
/**
|
|
733
|
+
* SELinux user label
|
|
734
|
+
*/
|
|
612
735
|
user?: string;
|
|
613
736
|
}
|
|
614
737
|
export interface ServiceTaskSpecContainerSpecConfig {
|
|
738
|
+
/**
|
|
739
|
+
* ID of the specific config that we're referencing
|
|
740
|
+
*/
|
|
615
741
|
configId: string;
|
|
742
|
+
/**
|
|
743
|
+
* Name of the config that this references, but this is just provided for lookup/display purposes. The config in the reference will be identified by its ID
|
|
744
|
+
*/
|
|
616
745
|
configName?: string;
|
|
746
|
+
/**
|
|
747
|
+
* Represents the file GID. Defaults to `0`.
|
|
748
|
+
*/
|
|
617
749
|
fileGid?: string;
|
|
750
|
+
/**
|
|
751
|
+
* Represents represents the FileMode of the file. Defaults to `0o444`.
|
|
752
|
+
*/
|
|
618
753
|
fileMode?: number;
|
|
754
|
+
/**
|
|
755
|
+
* Represents the final filename in the filesystem
|
|
756
|
+
*/
|
|
619
757
|
fileName: string;
|
|
758
|
+
/**
|
|
759
|
+
* Represents the file UID. Defaults to `0`.
|
|
760
|
+
*/
|
|
620
761
|
fileUid?: string;
|
|
621
762
|
}
|
|
622
763
|
export interface ServiceTaskSpecContainerSpecDnsConfig {
|
|
764
|
+
/**
|
|
765
|
+
* The IP addresses of the name servers
|
|
766
|
+
*/
|
|
623
767
|
nameservers: string[];
|
|
768
|
+
/**
|
|
769
|
+
* A list of internal resolver variables to be modified (e.g., `debug`, `ndots:3`, etc.)
|
|
770
|
+
*/
|
|
624
771
|
options?: string[];
|
|
772
|
+
/**
|
|
773
|
+
* A search list for host-name lookup
|
|
774
|
+
*/
|
|
625
775
|
searches?: string[];
|
|
626
776
|
}
|
|
627
777
|
export interface ServiceTaskSpecContainerSpecHealthcheck {
|
|
778
|
+
/**
|
|
779
|
+
* Time between running the check (ms|s|m|h). Defaults to `0s`.
|
|
780
|
+
*/
|
|
628
781
|
interval?: string;
|
|
782
|
+
/**
|
|
783
|
+
* Consecutive failures needed to report unhealthy. Defaults to `0`
|
|
784
|
+
*/
|
|
629
785
|
retries?: number;
|
|
786
|
+
/**
|
|
787
|
+
* Start period for the container to initialize before counting retries towards unstable (ms|s|m|h). Defaults to `0s`.
|
|
788
|
+
*/
|
|
630
789
|
startPeriod?: string;
|
|
790
|
+
/**
|
|
791
|
+
* The test to perform as list
|
|
792
|
+
*/
|
|
631
793
|
tests: string[];
|
|
794
|
+
/**
|
|
795
|
+
* The timeout of the service to reach the desired state `(s|m)`. Defaults to `3m`
|
|
796
|
+
*/
|
|
632
797
|
timeout?: string;
|
|
633
798
|
}
|
|
634
799
|
export interface ServiceTaskSpecContainerSpecHost {
|
|
800
|
+
/**
|
|
801
|
+
* The name of the host
|
|
802
|
+
*/
|
|
635
803
|
host: string;
|
|
804
|
+
/**
|
|
805
|
+
* The ip of the host
|
|
806
|
+
*/
|
|
636
807
|
ip: string;
|
|
637
808
|
}
|
|
638
809
|
export interface ServiceTaskSpecContainerSpecLabel {
|
|
@@ -646,26 +817,59 @@ export interface ServiceTaskSpecContainerSpecLabel {
|
|
|
646
817
|
value: string;
|
|
647
818
|
}
|
|
648
819
|
export interface ServiceTaskSpecContainerSpecMount {
|
|
820
|
+
/**
|
|
821
|
+
* Optional configuration for the bind type
|
|
822
|
+
*/
|
|
649
823
|
bindOptions?: outputs.ServiceTaskSpecContainerSpecMountBindOptions;
|
|
824
|
+
/**
|
|
825
|
+
* Whether the mount should be read-only
|
|
826
|
+
*/
|
|
650
827
|
readOnly?: boolean;
|
|
828
|
+
/**
|
|
829
|
+
* Mount source (e.g. a volume name, a host path)
|
|
830
|
+
*/
|
|
651
831
|
source?: string;
|
|
832
|
+
/**
|
|
833
|
+
* Container path
|
|
834
|
+
*/
|
|
652
835
|
target: string;
|
|
836
|
+
/**
|
|
837
|
+
* Optional configuration for the tmpfs type
|
|
838
|
+
*/
|
|
653
839
|
tmpfsOptions?: outputs.ServiceTaskSpecContainerSpecMountTmpfsOptions;
|
|
840
|
+
/**
|
|
841
|
+
* The mount type
|
|
842
|
+
*/
|
|
654
843
|
type: string;
|
|
844
|
+
/**
|
|
845
|
+
* Optional configuration for the volume type
|
|
846
|
+
*/
|
|
655
847
|
volumeOptions?: outputs.ServiceTaskSpecContainerSpecMountVolumeOptions;
|
|
656
848
|
}
|
|
657
849
|
export interface ServiceTaskSpecContainerSpecMountBindOptions {
|
|
850
|
+
/**
|
|
851
|
+
* Bind propagation refers to whether or not mounts created within a given bind-mount or named volume can be propagated to replicas of that mount. See the [docs](https://docs.docker.com/storage/bind-mounts/#configure-bind-propagation) for details. Defaults to `rprivate`
|
|
852
|
+
*/
|
|
658
853
|
propagation?: string;
|
|
659
854
|
}
|
|
660
855
|
export interface ServiceTaskSpecContainerSpecMountTmpfsOptions {
|
|
661
856
|
/**
|
|
662
|
-
*
|
|
857
|
+
* The mode of resolution to use for internal load balancing between tasks
|
|
663
858
|
*/
|
|
664
859
|
mode?: number;
|
|
860
|
+
/**
|
|
861
|
+
* The size for the tmpfs mount in bytes
|
|
862
|
+
*/
|
|
665
863
|
sizeBytes?: number;
|
|
666
864
|
}
|
|
667
865
|
export interface ServiceTaskSpecContainerSpecMountVolumeOptions {
|
|
866
|
+
/**
|
|
867
|
+
* Name of the driver to use to create the volume
|
|
868
|
+
*/
|
|
668
869
|
driverName?: string;
|
|
870
|
+
/**
|
|
871
|
+
* key/value map of driver specific options
|
|
872
|
+
*/
|
|
669
873
|
driverOptions?: {
|
|
670
874
|
[key: string]: string;
|
|
671
875
|
};
|
|
@@ -673,6 +877,9 @@ export interface ServiceTaskSpecContainerSpecMountVolumeOptions {
|
|
|
673
877
|
* User-defined key/value metadata
|
|
674
878
|
*/
|
|
675
879
|
labels?: outputs.ServiceTaskSpecContainerSpecMountVolumeOptionsLabel[];
|
|
880
|
+
/**
|
|
881
|
+
* Populate volume with data from the target
|
|
882
|
+
*/
|
|
676
883
|
noCopy?: boolean;
|
|
677
884
|
}
|
|
678
885
|
export interface ServiceTaskSpecContainerSpecMountVolumeOptionsLabel {
|
|
@@ -686,76 +893,187 @@ export interface ServiceTaskSpecContainerSpecMountVolumeOptionsLabel {
|
|
|
686
893
|
value: string;
|
|
687
894
|
}
|
|
688
895
|
export interface ServiceTaskSpecContainerSpecPrivileges {
|
|
896
|
+
/**
|
|
897
|
+
* CredentialSpec for managed service account (Windows only)
|
|
898
|
+
*/
|
|
689
899
|
credentialSpec?: outputs.ServiceTaskSpecContainerSpecPrivilegesCredentialSpec;
|
|
900
|
+
/**
|
|
901
|
+
* SELinux labels of the container
|
|
902
|
+
*/
|
|
690
903
|
seLinuxContext?: outputs.ServiceTaskSpecContainerSpecPrivilegesSeLinuxContext;
|
|
691
904
|
}
|
|
692
905
|
export interface ServiceTaskSpecContainerSpecPrivilegesCredentialSpec {
|
|
906
|
+
/**
|
|
907
|
+
* Load credential spec from this file
|
|
908
|
+
*/
|
|
693
909
|
file?: string;
|
|
910
|
+
/**
|
|
911
|
+
* Load credential spec from this value in the Windows registry
|
|
912
|
+
*/
|
|
694
913
|
registry?: string;
|
|
695
914
|
}
|
|
696
915
|
export interface ServiceTaskSpecContainerSpecPrivilegesSeLinuxContext {
|
|
916
|
+
/**
|
|
917
|
+
* Disable SELinux
|
|
918
|
+
*/
|
|
697
919
|
disable?: boolean;
|
|
920
|
+
/**
|
|
921
|
+
* SELinux level label
|
|
922
|
+
*/
|
|
698
923
|
level?: string;
|
|
924
|
+
/**
|
|
925
|
+
* SELinux role label
|
|
926
|
+
*/
|
|
699
927
|
role?: string;
|
|
928
|
+
/**
|
|
929
|
+
* The mount type
|
|
930
|
+
*/
|
|
700
931
|
type?: string;
|
|
932
|
+
/**
|
|
933
|
+
* SELinux user label
|
|
934
|
+
*/
|
|
701
935
|
user?: string;
|
|
702
936
|
}
|
|
703
937
|
export interface ServiceTaskSpecContainerSpecSecret {
|
|
938
|
+
/**
|
|
939
|
+
* Represents the file GID. Defaults to `0`.
|
|
940
|
+
*/
|
|
704
941
|
fileGid?: string;
|
|
942
|
+
/**
|
|
943
|
+
* Represents represents the FileMode of the file. Defaults to `0o444`.
|
|
944
|
+
*/
|
|
705
945
|
fileMode?: number;
|
|
946
|
+
/**
|
|
947
|
+
* Represents the final filename in the filesystem
|
|
948
|
+
*/
|
|
706
949
|
fileName: string;
|
|
950
|
+
/**
|
|
951
|
+
* Represents the file UID. Defaults to `0`.
|
|
952
|
+
*/
|
|
707
953
|
fileUid?: string;
|
|
954
|
+
/**
|
|
955
|
+
* ID of the specific secret that we're referencing
|
|
956
|
+
*/
|
|
708
957
|
secretId: string;
|
|
958
|
+
/**
|
|
959
|
+
* Name of the secret that this references, but this is just provided for lookup/display purposes. The config in the reference will be identified by its ID
|
|
960
|
+
*/
|
|
709
961
|
secretName?: string;
|
|
710
962
|
}
|
|
711
963
|
export interface ServiceTaskSpecLogDriver {
|
|
712
964
|
/**
|
|
713
|
-
*
|
|
965
|
+
* A random name for the port
|
|
714
966
|
*/
|
|
715
967
|
name: string;
|
|
968
|
+
/**
|
|
969
|
+
* A list of internal resolver variables to be modified (e.g., `debug`, `ndots:3`, etc.)
|
|
970
|
+
*/
|
|
716
971
|
options?: {
|
|
717
972
|
[key: string]: string;
|
|
718
973
|
};
|
|
719
974
|
}
|
|
720
975
|
export interface ServiceTaskSpecNetworksAdvanced {
|
|
976
|
+
/**
|
|
977
|
+
* The network aliases of the container in the specific network.
|
|
978
|
+
*/
|
|
721
979
|
aliases?: string[];
|
|
980
|
+
/**
|
|
981
|
+
* An array of driver options for the network, e.g. `opts1=value`
|
|
982
|
+
*/
|
|
722
983
|
driverOpts?: string[];
|
|
723
984
|
/**
|
|
724
|
-
*
|
|
985
|
+
* A random name for the port
|
|
725
986
|
*/
|
|
726
987
|
name: string;
|
|
727
988
|
}
|
|
728
989
|
export interface ServiceTaskSpecPlacement {
|
|
990
|
+
/**
|
|
991
|
+
* An array of constraints. e.g.: `node.role==manager`
|
|
992
|
+
*/
|
|
729
993
|
constraints?: string[];
|
|
994
|
+
/**
|
|
995
|
+
* Maximum number of replicas for per node (default value is `0`, which is unlimited)
|
|
996
|
+
*/
|
|
730
997
|
maxReplicas?: number;
|
|
998
|
+
/**
|
|
999
|
+
* Platforms stores all the platforms that the service's image can run on
|
|
1000
|
+
*/
|
|
731
1001
|
platforms?: outputs.ServiceTaskSpecPlacementPlatform[];
|
|
1002
|
+
/**
|
|
1003
|
+
* Preferences provide a way to make the scheduler aware of factors such as topology. They are provided in order from highest to lowest precedence, e.g.: `spread=node.role.manager`
|
|
1004
|
+
*/
|
|
732
1005
|
prefs?: string[];
|
|
733
1006
|
}
|
|
734
1007
|
export interface ServiceTaskSpecPlacementPlatform {
|
|
1008
|
+
/**
|
|
1009
|
+
* The architecture, e.g. `amd64`
|
|
1010
|
+
*/
|
|
735
1011
|
architecture: string;
|
|
1012
|
+
/**
|
|
1013
|
+
* The operation system, e.g. `linux`
|
|
1014
|
+
*/
|
|
736
1015
|
os: string;
|
|
737
1016
|
}
|
|
738
1017
|
export interface ServiceTaskSpecResources {
|
|
1018
|
+
/**
|
|
1019
|
+
* Describes the resources which can be advertised by a node and requested by a task
|
|
1020
|
+
*/
|
|
739
1021
|
limits?: outputs.ServiceTaskSpecResourcesLimits;
|
|
1022
|
+
/**
|
|
1023
|
+
* An object describing the resources which can be advertised by a node and requested by a task
|
|
1024
|
+
*/
|
|
740
1025
|
reservation?: outputs.ServiceTaskSpecResourcesReservation;
|
|
741
1026
|
}
|
|
742
1027
|
export interface ServiceTaskSpecResourcesLimits {
|
|
1028
|
+
/**
|
|
1029
|
+
* The amounf of memory in bytes the container allocates
|
|
1030
|
+
*/
|
|
743
1031
|
memoryBytes?: number;
|
|
1032
|
+
/**
|
|
1033
|
+
* CPU shares in units of `1/1e9` (or `10^-9`) of the CPU. Should be at least `1000000`
|
|
1034
|
+
*/
|
|
744
1035
|
nanoCpus?: number;
|
|
745
1036
|
}
|
|
746
1037
|
export interface ServiceTaskSpecResourcesReservation {
|
|
1038
|
+
/**
|
|
1039
|
+
* User-defined resources can be either Integer resources (e.g, `SSD=3`) or String resources (e.g, GPU=UUID1)
|
|
1040
|
+
*/
|
|
747
1041
|
genericResources?: outputs.ServiceTaskSpecResourcesReservationGenericResources;
|
|
1042
|
+
/**
|
|
1043
|
+
* The amounf of memory in bytes the container allocates
|
|
1044
|
+
*/
|
|
748
1045
|
memoryBytes?: number;
|
|
1046
|
+
/**
|
|
1047
|
+
* CPU shares in units of `1/1e9` (or `10^-9`) of the CPU. Should be at least `1000000`
|
|
1048
|
+
*/
|
|
749
1049
|
nanoCpus?: number;
|
|
750
1050
|
}
|
|
751
1051
|
export interface ServiceTaskSpecResourcesReservationGenericResources {
|
|
1052
|
+
/**
|
|
1053
|
+
* The Integer resources
|
|
1054
|
+
*/
|
|
752
1055
|
discreteResourcesSpecs?: string[];
|
|
1056
|
+
/**
|
|
1057
|
+
* The String resources
|
|
1058
|
+
*/
|
|
753
1059
|
namedResourcesSpecs?: string[];
|
|
754
1060
|
}
|
|
755
1061
|
export interface ServiceTaskSpecRestartPolicy {
|
|
1062
|
+
/**
|
|
1063
|
+
* Condition for restart
|
|
1064
|
+
*/
|
|
756
1065
|
condition?: string;
|
|
1066
|
+
/**
|
|
1067
|
+
* The interval to check if the desired state is reached `(ms|s)`. Defaults to `7s`.
|
|
1068
|
+
*/
|
|
757
1069
|
delay?: string;
|
|
1070
|
+
/**
|
|
1071
|
+
* Maximum attempts to restart a given container before giving up (default value is `0`, which is ignored)
|
|
1072
|
+
*/
|
|
758
1073
|
maxAttempts?: number;
|
|
1074
|
+
/**
|
|
1075
|
+
* The time window used to evaluate the restart policy (default value is `0`, which is unbounded) (ms|s|m|h)
|
|
1076
|
+
*/
|
|
759
1077
|
window?: string;
|
|
760
1078
|
}
|
|
761
1079
|
export interface ServiceUpdateConfig {
|