pulumi-docker 4.7.0a1705628423__py3-none-any.whl → 4.7.0a1736849606__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.

Potentially problematic release.


This version of pulumi-docker might be problematic. Click here for more details.

pulumi_docker/network.py CHANGED
@@ -4,9 +4,14 @@
4
4
 
5
5
  import copy
6
6
  import warnings
7
+ import sys
7
8
  import pulumi
8
9
  import pulumi.runtime
9
10
  from typing import Any, Mapping, Optional, Sequence, Union, overload
11
+ if sys.version_info >= (3, 11):
12
+ from typing import NotRequired, TypedDict, TypeAlias
13
+ else:
14
+ from typing_extensions import NotRequired, TypedDict, TypeAlias
10
15
  from . import _utilities
11
16
  from . import outputs
12
17
  from ._inputs import *
@@ -23,11 +28,11 @@ class NetworkArgs:
23
28
  internal: Optional[pulumi.Input[bool]] = None,
24
29
  ipam_configs: Optional[pulumi.Input[Sequence[pulumi.Input['NetworkIpamConfigArgs']]]] = None,
25
30
  ipam_driver: Optional[pulumi.Input[str]] = None,
26
- ipam_options: Optional[pulumi.Input[Mapping[str, Any]]] = None,
31
+ ipam_options: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
27
32
  ipv6: Optional[pulumi.Input[bool]] = None,
28
33
  labels: Optional[pulumi.Input[Sequence[pulumi.Input['NetworkLabelArgs']]]] = None,
29
34
  name: Optional[pulumi.Input[str]] = None,
30
- options: Optional[pulumi.Input[Mapping[str, Any]]] = None):
35
+ options: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None):
31
36
  """
32
37
  The set of arguments for constructing a Network resource.
33
38
  :param pulumi.Input[bool] attachable: Enable manual container attachment to the network.
@@ -37,11 +42,11 @@ class NetworkArgs:
37
42
  :param pulumi.Input[bool] internal: Whether the network is internal.
38
43
  :param pulumi.Input[Sequence[pulumi.Input['NetworkIpamConfigArgs']]] ipam_configs: The IPAM configuration options
39
44
  :param pulumi.Input[str] ipam_driver: Driver used by the custom IP scheme of the network. Defaults to `default`
40
- :param pulumi.Input[Mapping[str, Any]] ipam_options: Provide explicit options to the IPAM driver. Valid options vary with `ipam_driver` and refer to that driver's documentation for more details.
45
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] ipam_options: Provide explicit options to the IPAM driver. Valid options vary with `ipam_driver` and refer to that driver's documentation for more details.
41
46
  :param pulumi.Input[bool] ipv6: Enable IPv6 networking. Defaults to `false`.
42
47
  :param pulumi.Input[Sequence[pulumi.Input['NetworkLabelArgs']]] labels: User-defined key/value metadata
43
48
  :param pulumi.Input[str] name: The name of the Docker network.
44
- :param pulumi.Input[Mapping[str, Any]] options: Only available with bridge networks. See [bridge options docs](https://docs.docker.com/engine/reference/commandline/network_create/#bridge-driver-options) for more details.
49
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] options: Only available with bridge networks. See [bridge options docs](https://docs.docker.com/engine/reference/commandline/network_create/#bridge-driver-options) for more details.
45
50
  """
46
51
  if attachable is not None:
47
52
  pulumi.set(__self__, "attachable", attachable)
@@ -154,14 +159,14 @@ class NetworkArgs:
154
159
 
155
160
  @property
156
161
  @pulumi.getter(name="ipamOptions")
157
- def ipam_options(self) -> Optional[pulumi.Input[Mapping[str, Any]]]:
162
+ def ipam_options(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
158
163
  """
159
164
  Provide explicit options to the IPAM driver. Valid options vary with `ipam_driver` and refer to that driver's documentation for more details.
160
165
  """
161
166
  return pulumi.get(self, "ipam_options")
162
167
 
163
168
  @ipam_options.setter
164
- def ipam_options(self, value: Optional[pulumi.Input[Mapping[str, Any]]]):
169
+ def ipam_options(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
165
170
  pulumi.set(self, "ipam_options", value)
166
171
 
167
172
  @property
@@ -202,14 +207,14 @@ class NetworkArgs:
202
207
 
203
208
  @property
204
209
  @pulumi.getter
205
- def options(self) -> Optional[pulumi.Input[Mapping[str, Any]]]:
210
+ def options(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
206
211
  """
207
212
  Only available with bridge networks. See [bridge options docs](https://docs.docker.com/engine/reference/commandline/network_create/#bridge-driver-options) for more details.
208
213
  """
209
214
  return pulumi.get(self, "options")
210
215
 
211
216
  @options.setter
212
- def options(self, value: Optional[pulumi.Input[Mapping[str, Any]]]):
217
+ def options(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
213
218
  pulumi.set(self, "options", value)
214
219
 
215
220
 
@@ -223,11 +228,11 @@ class _NetworkState:
223
228
  internal: Optional[pulumi.Input[bool]] = None,
224
229
  ipam_configs: Optional[pulumi.Input[Sequence[pulumi.Input['NetworkIpamConfigArgs']]]] = None,
225
230
  ipam_driver: Optional[pulumi.Input[str]] = None,
226
- ipam_options: Optional[pulumi.Input[Mapping[str, Any]]] = None,
231
+ ipam_options: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
227
232
  ipv6: Optional[pulumi.Input[bool]] = None,
228
233
  labels: Optional[pulumi.Input[Sequence[pulumi.Input['NetworkLabelArgs']]]] = None,
229
234
  name: Optional[pulumi.Input[str]] = None,
230
- options: Optional[pulumi.Input[Mapping[str, Any]]] = None,
235
+ options: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
231
236
  scope: Optional[pulumi.Input[str]] = None):
232
237
  """
233
238
  Input properties used for looking up and filtering Network resources.
@@ -238,11 +243,11 @@ class _NetworkState:
238
243
  :param pulumi.Input[bool] internal: Whether the network is internal.
239
244
  :param pulumi.Input[Sequence[pulumi.Input['NetworkIpamConfigArgs']]] ipam_configs: The IPAM configuration options
240
245
  :param pulumi.Input[str] ipam_driver: Driver used by the custom IP scheme of the network. Defaults to `default`
241
- :param pulumi.Input[Mapping[str, Any]] ipam_options: Provide explicit options to the IPAM driver. Valid options vary with `ipam_driver` and refer to that driver's documentation for more details.
246
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] ipam_options: Provide explicit options to the IPAM driver. Valid options vary with `ipam_driver` and refer to that driver's documentation for more details.
242
247
  :param pulumi.Input[bool] ipv6: Enable IPv6 networking. Defaults to `false`.
243
248
  :param pulumi.Input[Sequence[pulumi.Input['NetworkLabelArgs']]] labels: User-defined key/value metadata
244
249
  :param pulumi.Input[str] name: The name of the Docker network.
245
- :param pulumi.Input[Mapping[str, Any]] options: Only available with bridge networks. See [bridge options docs](https://docs.docker.com/engine/reference/commandline/network_create/#bridge-driver-options) for more details.
250
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] options: Only available with bridge networks. See [bridge options docs](https://docs.docker.com/engine/reference/commandline/network_create/#bridge-driver-options) for more details.
246
251
  :param pulumi.Input[str] scope: Scope of the network. One of `swarm`, `global`, or `local`.
247
252
  """
248
253
  if attachable is not None:
@@ -358,14 +363,14 @@ class _NetworkState:
358
363
 
359
364
  @property
360
365
  @pulumi.getter(name="ipamOptions")
361
- def ipam_options(self) -> Optional[pulumi.Input[Mapping[str, Any]]]:
366
+ def ipam_options(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
362
367
  """
363
368
  Provide explicit options to the IPAM driver. Valid options vary with `ipam_driver` and refer to that driver's documentation for more details.
364
369
  """
365
370
  return pulumi.get(self, "ipam_options")
366
371
 
367
372
  @ipam_options.setter
368
- def ipam_options(self, value: Optional[pulumi.Input[Mapping[str, Any]]]):
373
+ def ipam_options(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
369
374
  pulumi.set(self, "ipam_options", value)
370
375
 
371
376
  @property
@@ -406,14 +411,14 @@ class _NetworkState:
406
411
 
407
412
  @property
408
413
  @pulumi.getter
409
- def options(self) -> Optional[pulumi.Input[Mapping[str, Any]]]:
414
+ def options(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
410
415
  """
411
416
  Only available with bridge networks. See [bridge options docs](https://docs.docker.com/engine/reference/commandline/network_create/#bridge-driver-options) for more details.
412
417
  """
413
418
  return pulumi.get(self, "options")
414
419
 
415
420
  @options.setter
416
- def options(self, value: Optional[pulumi.Input[Mapping[str, Any]]]):
421
+ def options(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
417
422
  pulumi.set(self, "options", value)
418
423
 
419
424
  @property
@@ -439,13 +444,13 @@ class Network(pulumi.CustomResource):
439
444
  driver: Optional[pulumi.Input[str]] = None,
440
445
  ingress: Optional[pulumi.Input[bool]] = None,
441
446
  internal: Optional[pulumi.Input[bool]] = None,
442
- ipam_configs: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['NetworkIpamConfigArgs']]]]] = None,
447
+ ipam_configs: Optional[pulumi.Input[Sequence[pulumi.Input[Union['NetworkIpamConfigArgs', 'NetworkIpamConfigArgsDict']]]]] = None,
443
448
  ipam_driver: Optional[pulumi.Input[str]] = None,
444
- ipam_options: Optional[pulumi.Input[Mapping[str, Any]]] = None,
449
+ ipam_options: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
445
450
  ipv6: Optional[pulumi.Input[bool]] = None,
446
- labels: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['NetworkLabelArgs']]]]] = None,
451
+ labels: Optional[pulumi.Input[Sequence[pulumi.Input[Union['NetworkLabelArgs', 'NetworkLabelArgsDict']]]]] = None,
447
452
  name: Optional[pulumi.Input[str]] = None,
448
- options: Optional[pulumi.Input[Mapping[str, Any]]] = None,
453
+ options: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
449
454
  __props__=None):
450
455
  """
451
456
  <!-- Bug: Type and Name are switched -->
@@ -457,17 +462,39 @@ class Network(pulumi.CustomResource):
457
462
  import pulumi
458
463
  import pulumi_docker as docker
459
464
 
460
- private_network = docker.Network("privateNetwork")
465
+ private_network = docker.Network("private_network", name="my_network")
461
466
  ```
462
467
 
463
468
  ## Import
464
469
 
465
- ### Example Assuming you created a `network` as follows #!/bin/bash docker network create foo prints the long ID 87b57a9b91ecab2db2a6dbf38df74c67d7c7108cbe479d6576574ec2cd8c2d73 you provide the definition for the resource as follows terraform resource "docker_network" "foo" {
470
+ ### Example
466
471
 
467
- name = "foo" } then the import command is as follows #!/bin/bash
472
+ Assuming you created a `network` as follows
473
+
474
+ #!/bin/bash
475
+
476
+ docker network create foo
477
+
478
+ prints the long ID
479
+
480
+ 87b57a9b91ecab2db2a6dbf38df74c67d7c7108cbe479d6576574ec2cd8c2d73
481
+
482
+ you provide the definition for the resource as follows
483
+
484
+ terraform
485
+
486
+ resource "docker_network" "foo" {
487
+
488
+ name = "foo"
489
+
490
+ }
491
+
492
+ then the import command is as follows
493
+
494
+ #!/bin/bash
468
495
 
469
496
  ```sh
470
- $ pulumi import docker:index/network:Network foo 87b57a9b91ecab2db2a6dbf38df74c67d7c7108cbe479d6576574ec2cd8c2d73
497
+ $ pulumi import docker:index/network:Network foo 87b57a9b91ecab2db2a6dbf38df74c67d7c7108cbe479d6576574ec2cd8c2d73
471
498
  ```
472
499
 
473
500
  :param str resource_name: The name of the resource.
@@ -477,13 +504,13 @@ class Network(pulumi.CustomResource):
477
504
  :param pulumi.Input[str] driver: The driver of the Docker network. Possible values are `bridge`, `host`, `overlay`, `macvlan`. See [network docs](https://docs.docker.com/network/#network-drivers) for more details.
478
505
  :param pulumi.Input[bool] ingress: Create swarm routing-mesh network. Defaults to `false`.
479
506
  :param pulumi.Input[bool] internal: Whether the network is internal.
480
- :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['NetworkIpamConfigArgs']]]] ipam_configs: The IPAM configuration options
507
+ :param pulumi.Input[Sequence[pulumi.Input[Union['NetworkIpamConfigArgs', 'NetworkIpamConfigArgsDict']]]] ipam_configs: The IPAM configuration options
481
508
  :param pulumi.Input[str] ipam_driver: Driver used by the custom IP scheme of the network. Defaults to `default`
482
- :param pulumi.Input[Mapping[str, Any]] ipam_options: Provide explicit options to the IPAM driver. Valid options vary with `ipam_driver` and refer to that driver's documentation for more details.
509
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] ipam_options: Provide explicit options to the IPAM driver. Valid options vary with `ipam_driver` and refer to that driver's documentation for more details.
483
510
  :param pulumi.Input[bool] ipv6: Enable IPv6 networking. Defaults to `false`.
484
- :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['NetworkLabelArgs']]]] labels: User-defined key/value metadata
511
+ :param pulumi.Input[Sequence[pulumi.Input[Union['NetworkLabelArgs', 'NetworkLabelArgsDict']]]] labels: User-defined key/value metadata
485
512
  :param pulumi.Input[str] name: The name of the Docker network.
486
- :param pulumi.Input[Mapping[str, Any]] options: Only available with bridge networks. See [bridge options docs](https://docs.docker.com/engine/reference/commandline/network_create/#bridge-driver-options) for more details.
513
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] options: Only available with bridge networks. See [bridge options docs](https://docs.docker.com/engine/reference/commandline/network_create/#bridge-driver-options) for more details.
487
514
  """
488
515
  ...
489
516
  @overload
@@ -501,17 +528,39 @@ class Network(pulumi.CustomResource):
501
528
  import pulumi
502
529
  import pulumi_docker as docker
503
530
 
504
- private_network = docker.Network("privateNetwork")
531
+ private_network = docker.Network("private_network", name="my_network")
505
532
  ```
506
533
 
507
534
  ## Import
508
535
 
509
- ### Example Assuming you created a `network` as follows #!/bin/bash docker network create foo prints the long ID 87b57a9b91ecab2db2a6dbf38df74c67d7c7108cbe479d6576574ec2cd8c2d73 you provide the definition for the resource as follows terraform resource "docker_network" "foo" {
536
+ ### Example
537
+
538
+ Assuming you created a `network` as follows
539
+
540
+ #!/bin/bash
541
+
542
+ docker network create foo
543
+
544
+ prints the long ID
545
+
546
+ 87b57a9b91ecab2db2a6dbf38df74c67d7c7108cbe479d6576574ec2cd8c2d73
547
+
548
+ you provide the definition for the resource as follows
549
+
550
+ terraform
551
+
552
+ resource "docker_network" "foo" {
553
+
554
+ name = "foo"
555
+
556
+ }
557
+
558
+ then the import command is as follows
510
559
 
511
- name = "foo" } then the import command is as follows #!/bin/bash
560
+ #!/bin/bash
512
561
 
513
562
  ```sh
514
- $ pulumi import docker:index/network:Network foo 87b57a9b91ecab2db2a6dbf38df74c67d7c7108cbe479d6576574ec2cd8c2d73
563
+ $ pulumi import docker:index/network:Network foo 87b57a9b91ecab2db2a6dbf38df74c67d7c7108cbe479d6576574ec2cd8c2d73
515
564
  ```
516
565
 
517
566
  :param str resource_name: The name of the resource.
@@ -534,13 +583,13 @@ class Network(pulumi.CustomResource):
534
583
  driver: Optional[pulumi.Input[str]] = None,
535
584
  ingress: Optional[pulumi.Input[bool]] = None,
536
585
  internal: Optional[pulumi.Input[bool]] = None,
537
- ipam_configs: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['NetworkIpamConfigArgs']]]]] = None,
586
+ ipam_configs: Optional[pulumi.Input[Sequence[pulumi.Input[Union['NetworkIpamConfigArgs', 'NetworkIpamConfigArgsDict']]]]] = None,
538
587
  ipam_driver: Optional[pulumi.Input[str]] = None,
539
- ipam_options: Optional[pulumi.Input[Mapping[str, Any]]] = None,
588
+ ipam_options: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
540
589
  ipv6: Optional[pulumi.Input[bool]] = None,
541
- labels: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['NetworkLabelArgs']]]]] = None,
590
+ labels: Optional[pulumi.Input[Sequence[pulumi.Input[Union['NetworkLabelArgs', 'NetworkLabelArgsDict']]]]] = None,
542
591
  name: Optional[pulumi.Input[str]] = None,
543
- options: Optional[pulumi.Input[Mapping[str, Any]]] = None,
592
+ options: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
544
593
  __props__=None):
545
594
  opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
546
595
  if not isinstance(opts, pulumi.ResourceOptions):
@@ -578,13 +627,13 @@ class Network(pulumi.CustomResource):
578
627
  driver: Optional[pulumi.Input[str]] = None,
579
628
  ingress: Optional[pulumi.Input[bool]] = None,
580
629
  internal: Optional[pulumi.Input[bool]] = None,
581
- ipam_configs: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['NetworkIpamConfigArgs']]]]] = None,
630
+ ipam_configs: Optional[pulumi.Input[Sequence[pulumi.Input[Union['NetworkIpamConfigArgs', 'NetworkIpamConfigArgsDict']]]]] = None,
582
631
  ipam_driver: Optional[pulumi.Input[str]] = None,
583
- ipam_options: Optional[pulumi.Input[Mapping[str, Any]]] = None,
632
+ ipam_options: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
584
633
  ipv6: Optional[pulumi.Input[bool]] = None,
585
- labels: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['NetworkLabelArgs']]]]] = None,
634
+ labels: Optional[pulumi.Input[Sequence[pulumi.Input[Union['NetworkLabelArgs', 'NetworkLabelArgsDict']]]]] = None,
586
635
  name: Optional[pulumi.Input[str]] = None,
587
- options: Optional[pulumi.Input[Mapping[str, Any]]] = None,
636
+ options: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
588
637
  scope: Optional[pulumi.Input[str]] = None) -> 'Network':
589
638
  """
590
639
  Get an existing Network resource's state with the given name, id, and optional extra
@@ -598,13 +647,13 @@ class Network(pulumi.CustomResource):
598
647
  :param pulumi.Input[str] driver: The driver of the Docker network. Possible values are `bridge`, `host`, `overlay`, `macvlan`. See [network docs](https://docs.docker.com/network/#network-drivers) for more details.
599
648
  :param pulumi.Input[bool] ingress: Create swarm routing-mesh network. Defaults to `false`.
600
649
  :param pulumi.Input[bool] internal: Whether the network is internal.
601
- :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['NetworkIpamConfigArgs']]]] ipam_configs: The IPAM configuration options
650
+ :param pulumi.Input[Sequence[pulumi.Input[Union['NetworkIpamConfigArgs', 'NetworkIpamConfigArgsDict']]]] ipam_configs: The IPAM configuration options
602
651
  :param pulumi.Input[str] ipam_driver: Driver used by the custom IP scheme of the network. Defaults to `default`
603
- :param pulumi.Input[Mapping[str, Any]] ipam_options: Provide explicit options to the IPAM driver. Valid options vary with `ipam_driver` and refer to that driver's documentation for more details.
652
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] ipam_options: Provide explicit options to the IPAM driver. Valid options vary with `ipam_driver` and refer to that driver's documentation for more details.
604
653
  :param pulumi.Input[bool] ipv6: Enable IPv6 networking. Defaults to `false`.
605
- :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['NetworkLabelArgs']]]] labels: User-defined key/value metadata
654
+ :param pulumi.Input[Sequence[pulumi.Input[Union['NetworkLabelArgs', 'NetworkLabelArgsDict']]]] labels: User-defined key/value metadata
606
655
  :param pulumi.Input[str] name: The name of the Docker network.
607
- :param pulumi.Input[Mapping[str, Any]] options: Only available with bridge networks. See [bridge options docs](https://docs.docker.com/engine/reference/commandline/network_create/#bridge-driver-options) for more details.
656
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] options: Only available with bridge networks. See [bridge options docs](https://docs.docker.com/engine/reference/commandline/network_create/#bridge-driver-options) for more details.
608
657
  :param pulumi.Input[str] scope: Scope of the network. One of `swarm`, `global`, or `local`.
609
658
  """
610
659
  opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
@@ -684,7 +733,7 @@ class Network(pulumi.CustomResource):
684
733
 
685
734
  @property
686
735
  @pulumi.getter(name="ipamOptions")
687
- def ipam_options(self) -> pulumi.Output[Optional[Mapping[str, Any]]]:
736
+ def ipam_options(self) -> pulumi.Output[Optional[Mapping[str, str]]]:
688
737
  """
689
738
  Provide explicit options to the IPAM driver. Valid options vary with `ipam_driver` and refer to that driver's documentation for more details.
690
739
  """
@@ -716,7 +765,7 @@ class Network(pulumi.CustomResource):
716
765
 
717
766
  @property
718
767
  @pulumi.getter
719
- def options(self) -> pulumi.Output[Mapping[str, Any]]:
768
+ def options(self) -> pulumi.Output[Mapping[str, str]]:
720
769
  """
721
770
  Only available with bridge networks. See [bridge options docs](https://docs.docker.com/engine/reference/commandline/network_create/#bridge-driver-options) for more details.
722
771
  """