docker-engine 0.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (248) hide show
  1. checksums.yaml +7 -0
  2. data/.ignore +2 -0
  3. data/CHANGELOG.md +17 -0
  4. data/README.md +230 -0
  5. data/SECURITY.md +27 -0
  6. data/lib/docker_engine/client.rb +77 -0
  7. data/lib/docker_engine/errors.rb +228 -0
  8. data/lib/docker_engine/file_part.rb +58 -0
  9. data/lib/docker_engine/internal/transport/base_client.rb +567 -0
  10. data/lib/docker_engine/internal/transport/pooled_net_requester.rb +210 -0
  11. data/lib/docker_engine/internal/type/array_of.rb +168 -0
  12. data/lib/docker_engine/internal/type/base_model.rb +529 -0
  13. data/lib/docker_engine/internal/type/base_page.rb +55 -0
  14. data/lib/docker_engine/internal/type/boolean.rb +77 -0
  15. data/lib/docker_engine/internal/type/converter.rb +327 -0
  16. data/lib/docker_engine/internal/type/enum.rb +131 -0
  17. data/lib/docker_engine/internal/type/file_input.rb +111 -0
  18. data/lib/docker_engine/internal/type/hash_of.rb +188 -0
  19. data/lib/docker_engine/internal/type/request_parameters.rb +42 -0
  20. data/lib/docker_engine/internal/type/union.rb +243 -0
  21. data/lib/docker_engine/internal/type/unknown.rb +81 -0
  22. data/lib/docker_engine/internal/util.rb +920 -0
  23. data/lib/docker_engine/internal.rb +20 -0
  24. data/lib/docker_engine/models/auth_login_params.rb +32 -0
  25. data/lib/docker_engine/models/auth_response.rb +27 -0
  26. data/lib/docker_engine/models/config.rb +307 -0
  27. data/lib/docker_engine/models/container.rb +2489 -0
  28. data/lib/docker_engine/models/container_create_params.rb +1716 -0
  29. data/lib/docker_engine/models/container_delete_params.rb +38 -0
  30. data/lib/docker_engine/models/container_inspect_params.rb +22 -0
  31. data/lib/docker_engine/models/container_kill_params.rb +25 -0
  32. data/lib/docker_engine/models/container_list_params.rb +70 -0
  33. data/lib/docker_engine/models/container_list_response.rb +8 -0
  34. data/lib/docker_engine/models/container_logs_params.rb +74 -0
  35. data/lib/docker_engine/models/container_start_params.rb +27 -0
  36. data/lib/docker_engine/models/container_stop_params.rb +33 -0
  37. data/lib/docker_engine/models/create_request.rb +348 -0
  38. data/lib/docker_engine/models/create_response.rb +27 -0
  39. data/lib/docker_engine/models/error.rb +18 -0
  40. data/lib/docker_engine/models/image.rb +1393 -0
  41. data/lib/docker_engine/models/image_delete_params.rb +43 -0
  42. data/lib/docker_engine/models/image_delete_response.rb +28 -0
  43. data/lib/docker_engine/models/image_inspect_params.rb +22 -0
  44. data/lib/docker_engine/models/image_list_params.rb +68 -0
  45. data/lib/docker_engine/models/image_list_response.rb +8 -0
  46. data/lib/docker_engine/models/image_pull_params.rb +115 -0
  47. data/lib/docker_engine/models/network.rb +253 -0
  48. data/lib/docker_engine/models/network_create_params.rb +210 -0
  49. data/lib/docker_engine/models/network_create_response.rb +27 -0
  50. data/lib/docker_engine/models/network_delete_params.rb +14 -0
  51. data/lib/docker_engine/models/network_inspect_params.rb +30 -0
  52. data/lib/docker_engine/models/network_inspect_response.rb +131 -0
  53. data/lib/docker_engine/models/network_list_params.rb +40 -0
  54. data/lib/docker_engine/models/network_list_response.rb +8 -0
  55. data/lib/docker_engine/models/service.rb +520 -0
  56. data/lib/docker_engine/models/service_create_params.rb +34 -0
  57. data/lib/docker_engine/models/service_create_response.rb +32 -0
  58. data/lib/docker_engine/models/service_delete_params.rb +14 -0
  59. data/lib/docker_engine/models/service_inspect_params.rb +22 -0
  60. data/lib/docker_engine/models/service_list_params.rb +41 -0
  61. data/lib/docker_engine/models/service_list_response.rb +8 -0
  62. data/lib/docker_engine/models/spec.rb +2302 -0
  63. data/lib/docker_engine/models/summary.rb +763 -0
  64. data/lib/docker_engine/models/system_info_params.rb +14 -0
  65. data/lib/docker_engine/models/system_info_response.rb +1879 -0
  66. data/lib/docker_engine/models/system_ping_params.rb +14 -0
  67. data/lib/docker_engine/models/system_ping_response.rb +7 -0
  68. data/lib/docker_engine/models/system_version_params.rb +14 -0
  69. data/lib/docker_engine/models/system_version_response.rb +164 -0
  70. data/lib/docker_engine/models/volume.rb +650 -0
  71. data/lib/docker_engine/models/volume_create_params.rb +14 -0
  72. data/lib/docker_engine/models/volume_delete_params.rb +22 -0
  73. data/lib/docker_engine/models/volume_inspect_params.rb +14 -0
  74. data/lib/docker_engine/models/volume_list_params.rb +34 -0
  75. data/lib/docker_engine/models/volume_list_response.rb +34 -0
  76. data/lib/docker_engine/models.rb +121 -0
  77. data/lib/docker_engine/request_options.rb +77 -0
  78. data/lib/docker_engine/resources/auth.rb +38 -0
  79. data/lib/docker_engine/resources/containers.rb +258 -0
  80. data/lib/docker_engine/resources/images.rb +156 -0
  81. data/lib/docker_engine/resources/networks.rb +139 -0
  82. data/lib/docker_engine/resources/services.rb +113 -0
  83. data/lib/docker_engine/resources/system.rb +70 -0
  84. data/lib/docker_engine/resources/volumes.rb +105 -0
  85. data/lib/docker_engine/version.rb +5 -0
  86. data/lib/docker_engine.rb +114 -0
  87. data/manifest.yaml +17 -0
  88. data/rbi/docker_engine/client.rbi +56 -0
  89. data/rbi/docker_engine/errors.rbi +205 -0
  90. data/rbi/docker_engine/file_part.rbi +37 -0
  91. data/rbi/docker_engine/internal/transport/base_client.rbi +300 -0
  92. data/rbi/docker_engine/internal/transport/pooled_net_requester.rbi +84 -0
  93. data/rbi/docker_engine/internal/type/array_of.rbi +104 -0
  94. data/rbi/docker_engine/internal/type/base_model.rbi +314 -0
  95. data/rbi/docker_engine/internal/type/base_page.rbi +43 -0
  96. data/rbi/docker_engine/internal/type/boolean.rbi +58 -0
  97. data/rbi/docker_engine/internal/type/converter.rbi +222 -0
  98. data/rbi/docker_engine/internal/type/enum.rbi +82 -0
  99. data/rbi/docker_engine/internal/type/file_input.rbi +59 -0
  100. data/rbi/docker_engine/internal/type/hash_of.rbi +104 -0
  101. data/rbi/docker_engine/internal/type/request_parameters.rbi +31 -0
  102. data/rbi/docker_engine/internal/type/union.rbi +128 -0
  103. data/rbi/docker_engine/internal/type/unknown.rbi +58 -0
  104. data/rbi/docker_engine/internal/util.rbi +487 -0
  105. data/rbi/docker_engine/internal.rbi +18 -0
  106. data/rbi/docker_engine/models/auth_login_params.rbi +62 -0
  107. data/rbi/docker_engine/models/auth_response.rbi +39 -0
  108. data/rbi/docker_engine/models/config.rbi +442 -0
  109. data/rbi/docker_engine/models/container.rbi +4575 -0
  110. data/rbi/docker_engine/models/container_create_params.rbi +3297 -0
  111. data/rbi/docker_engine/models/container_delete_params.rbi +71 -0
  112. data/rbi/docker_engine/models/container_inspect_params.rbi +46 -0
  113. data/rbi/docker_engine/models/container_kill_params.rbi +46 -0
  114. data/rbi/docker_engine/models/container_list_params.rbi +124 -0
  115. data/rbi/docker_engine/models/container_list_response.rbi +11 -0
  116. data/rbi/docker_engine/models/container_logs_params.rbi +117 -0
  117. data/rbi/docker_engine/models/container_start_params.rbi +50 -0
  118. data/rbi/docker_engine/models/container_stop_params.rbi +60 -0
  119. data/rbi/docker_engine/models/create_request.rbi +702 -0
  120. data/rbi/docker_engine/models/create_response.rbi +36 -0
  121. data/rbi/docker_engine/models/error.rbi +28 -0
  122. data/rbi/docker_engine/models/image.rbi +2323 -0
  123. data/rbi/docker_engine/models/image_delete_params.rbi +75 -0
  124. data/rbi/docker_engine/models/image_delete_response.rbi +52 -0
  125. data/rbi/docker_engine/models/image_inspect_params.rbi +49 -0
  126. data/rbi/docker_engine/models/image_list_params.rbi +112 -0
  127. data/rbi/docker_engine/models/image_list_response.rbi +11 -0
  128. data/rbi/docker_engine/models/image_pull_params.rbi +186 -0
  129. data/rbi/docker_engine/models/network.rbi +419 -0
  130. data/rbi/docker_engine/models/network_create_params.rbi +362 -0
  131. data/rbi/docker_engine/models/network_create_response.rbi +37 -0
  132. data/rbi/docker_engine/models/network_delete_params.rbi +32 -0
  133. data/rbi/docker_engine/models/network_inspect_params.rbi +60 -0
  134. data/rbi/docker_engine/models/network_inspect_response.rbi +329 -0
  135. data/rbi/docker_engine/models/network_list_params.rbi +76 -0
  136. data/rbi/docker_engine/models/network_list_response.rbi +11 -0
  137. data/rbi/docker_engine/models/service.rbi +1076 -0
  138. data/rbi/docker_engine/models/service_create_params.rbi +77 -0
  139. data/rbi/docker_engine/models/service_create_response.rbi +50 -0
  140. data/rbi/docker_engine/models/service_delete_params.rbi +32 -0
  141. data/rbi/docker_engine/models/service_inspect_params.rbi +49 -0
  142. data/rbi/docker_engine/models/service_list_params.rbi +76 -0
  143. data/rbi/docker_engine/models/service_list_response.rbi +11 -0
  144. data/rbi/docker_engine/models/spec.rbi +4587 -0
  145. data/rbi/docker_engine/models/summary.rbi +1298 -0
  146. data/rbi/docker_engine/models/system_info_params.rbi +29 -0
  147. data/rbi/docker_engine/models/system_info_response.rbi +3587 -0
  148. data/rbi/docker_engine/models/system_ping_params.rbi +29 -0
  149. data/rbi/docker_engine/models/system_ping_response.rbi +7 -0
  150. data/rbi/docker_engine/models/system_version_params.rbi +32 -0
  151. data/rbi/docker_engine/models/system_version_response.rbi +282 -0
  152. data/rbi/docker_engine/models/volume.rbi +1218 -0
  153. data/rbi/docker_engine/models/volume_create_params.rbi +32 -0
  154. data/rbi/docker_engine/models/volume_delete_params.rbi +46 -0
  155. data/rbi/docker_engine/models/volume_inspect_params.rbi +32 -0
  156. data/rbi/docker_engine/models/volume_list_params.rbi +61 -0
  157. data/rbi/docker_engine/models/volume_list_response.rbi +55 -0
  158. data/rbi/docker_engine/models.rbi +83 -0
  159. data/rbi/docker_engine/request_options.rbi +59 -0
  160. data/rbi/docker_engine/resources/auth.rbi +30 -0
  161. data/rbi/docker_engine/resources/containers.rbi +231 -0
  162. data/rbi/docker_engine/resources/images.rbi +164 -0
  163. data/rbi/docker_engine/resources/networks.rbi +133 -0
  164. data/rbi/docker_engine/resources/services.rbi +88 -0
  165. data/rbi/docker_engine/resources/system.rbi +40 -0
  166. data/rbi/docker_engine/resources/volumes.rbi +80 -0
  167. data/rbi/docker_engine/version.rbi +5 -0
  168. data/sig/docker_engine/client.rbs +33 -0
  169. data/sig/docker_engine/errors.rbs +117 -0
  170. data/sig/docker_engine/file_part.rbs +21 -0
  171. data/sig/docker_engine/internal/transport/base_client.rbs +131 -0
  172. data/sig/docker_engine/internal/transport/pooled_net_requester.rbs +48 -0
  173. data/sig/docker_engine/internal/type/array_of.rbs +48 -0
  174. data/sig/docker_engine/internal/type/base_model.rbs +104 -0
  175. data/sig/docker_engine/internal/type/base_page.rbs +24 -0
  176. data/sig/docker_engine/internal/type/boolean.rbs +26 -0
  177. data/sig/docker_engine/internal/type/converter.rbs +79 -0
  178. data/sig/docker_engine/internal/type/enum.rbs +32 -0
  179. data/sig/docker_engine/internal/type/file_input.rbs +25 -0
  180. data/sig/docker_engine/internal/type/hash_of.rbs +48 -0
  181. data/sig/docker_engine/internal/type/request_parameters.rbs +19 -0
  182. data/sig/docker_engine/internal/type/union.rbs +52 -0
  183. data/sig/docker_engine/internal/type/unknown.rbs +26 -0
  184. data/sig/docker_engine/internal/util.rbs +185 -0
  185. data/sig/docker_engine/internal.rbs +9 -0
  186. data/sig/docker_engine/models/auth_login_params.rbs +38 -0
  187. data/sig/docker_engine/models/auth_response.rbs +17 -0
  188. data/sig/docker_engine/models/config.rbs +225 -0
  189. data/sig/docker_engine/models/container.rbs +1973 -0
  190. data/sig/docker_engine/models/container_create_params.rbs +1352 -0
  191. data/sig/docker_engine/models/container_delete_params.rbs +38 -0
  192. data/sig/docker_engine/models/container_inspect_params.rbs +25 -0
  193. data/sig/docker_engine/models/container_kill_params.rbs +25 -0
  194. data/sig/docker_engine/models/container_list_params.rbs +44 -0
  195. data/sig/docker_engine/models/container_list_response.rbs +7 -0
  196. data/sig/docker_engine/models/container_logs_params.rbs +70 -0
  197. data/sig/docker_engine/models/container_start_params.rbs +25 -0
  198. data/sig/docker_engine/models/container_stop_params.rbs +32 -0
  199. data/sig/docker_engine/models/create_request.rbs +255 -0
  200. data/sig/docker_engine/models/create_response.rbs +15 -0
  201. data/sig/docker_engine/models/error.rbs +13 -0
  202. data/sig/docker_engine/models/image.rbs +1038 -0
  203. data/sig/docker_engine/models/image_delete_params.rbs +38 -0
  204. data/sig/docker_engine/models/image_delete_response.rbs +24 -0
  205. data/sig/docker_engine/models/image_inspect_params.rbs +25 -0
  206. data/sig/docker_engine/models/image_list_params.rbs +56 -0
  207. data/sig/docker_engine/models/image_list_response.rbs +7 -0
  208. data/sig/docker_engine/models/image_pull_params.rbs +84 -0
  209. data/sig/docker_engine/models/network.rbs +236 -0
  210. data/sig/docker_engine/models/network_create_params.rbs +203 -0
  211. data/sig/docker_engine/models/network_create_response.rbs +15 -0
  212. data/sig/docker_engine/models/network_delete_params.rbs +15 -0
  213. data/sig/docker_engine/models/network_inspect_params.rbs +32 -0
  214. data/sig/docker_engine/models/network_inspect_response.rbs +149 -0
  215. data/sig/docker_engine/models/network_list_params.rbs +25 -0
  216. data/sig/docker_engine/models/network_list_response.rbs +7 -0
  217. data/sig/docker_engine/models/service.rbs +471 -0
  218. data/sig/docker_engine/models/service_create_params.rbs +38 -0
  219. data/sig/docker_engine/models/service_create_response.rbs +17 -0
  220. data/sig/docker_engine/models/service_delete_params.rbs +15 -0
  221. data/sig/docker_engine/models/service_inspect_params.rbs +26 -0
  222. data/sig/docker_engine/models/service_list_params.rbs +32 -0
  223. data/sig/docker_engine/models/service_list_response.rbs +7 -0
  224. data/sig/docker_engine/models/spec.rbs +1984 -0
  225. data/sig/docker_engine/models/summary.rbs +634 -0
  226. data/sig/docker_engine/models/system_info_params.rbs +15 -0
  227. data/sig/docker_engine/models/system_info_response.rbs +1380 -0
  228. data/sig/docker_engine/models/system_ping_params.rbs +15 -0
  229. data/sig/docker_engine/models/system_ping_response.rbs +5 -0
  230. data/sig/docker_engine/models/system_version_params.rbs +15 -0
  231. data/sig/docker_engine/models/system_version_response.rbs +127 -0
  232. data/sig/docker_engine/models/volume.rbs +478 -0
  233. data/sig/docker_engine/models/volume_create_params.rbs +15 -0
  234. data/sig/docker_engine/models/volume_delete_params.rbs +25 -0
  235. data/sig/docker_engine/models/volume_inspect_params.rbs +15 -0
  236. data/sig/docker_engine/models/volume_list_params.rbs +25 -0
  237. data/sig/docker_engine/models/volume_list_response.rbs +28 -0
  238. data/sig/docker_engine/models.rbs +81 -0
  239. data/sig/docker_engine/request_options.rbs +36 -0
  240. data/sig/docker_engine/resources/auth.rbs +14 -0
  241. data/sig/docker_engine/resources/containers.rbs +67 -0
  242. data/sig/docker_engine/resources/images.rbs +43 -0
  243. data/sig/docker_engine/resources/networks.rbs +41 -0
  244. data/sig/docker_engine/resources/services.rbs +30 -0
  245. data/sig/docker_engine/resources/system.rbs +17 -0
  246. data/sig/docker_engine/resources/volumes.rbs +28 -0
  247. data/sig/docker_engine/version.rbs +3 -0
  248. metadata +319 -0
@@ -0,0 +1,419 @@
1
+ # typed: strong
2
+
3
+ module DockerEngine
4
+ module Models
5
+ class Network < DockerEngine::Internal::Type::BaseModel
6
+ OrHash =
7
+ T.type_alias do
8
+ T.any(DockerEngine::Network, DockerEngine::Internal::AnyHash)
9
+ end
10
+
11
+ # Whether a global / swarm scope network is manually attachable by regular
12
+ # containers from workers in swarm mode.
13
+ sig { returns(T.nilable(T::Boolean)) }
14
+ attr_reader :attachable
15
+
16
+ sig { params(attachable: T::Boolean).void }
17
+ attr_writer :attachable
18
+
19
+ # The config-only network source to provide the configuration for this network.
20
+ sig { returns(T.nilable(DockerEngine::Network::ConfigFrom)) }
21
+ attr_reader :config_from
22
+
23
+ sig do
24
+ params(config_from: DockerEngine::Network::ConfigFrom::OrHash).void
25
+ end
26
+ attr_writer :config_from
27
+
28
+ # Whether the network is a config-only network. Config-only networks are
29
+ # placeholder networks for network configurations to be used by other networks.
30
+ # Config-only networks cannot be used directly to run containers or services.
31
+ sig { returns(T.nilable(T::Boolean)) }
32
+ attr_reader :config_only
33
+
34
+ sig { params(config_only: T::Boolean).void }
35
+ attr_writer :config_only
36
+
37
+ # Date and time at which the network was created in
38
+ # [RFC 3339](https://www.ietf.org/rfc/rfc3339.txt) format with nano-seconds.
39
+ sig { returns(T.nilable(String)) }
40
+ attr_reader :created
41
+
42
+ sig { params(created: String).void }
43
+ attr_writer :created
44
+
45
+ # The name of the driver used to create the network (e.g. `bridge`, `overlay`).
46
+ sig { returns(T.nilable(String)) }
47
+ attr_reader :driver
48
+
49
+ sig { params(driver: String).void }
50
+ attr_writer :driver
51
+
52
+ # Whether the network was created with IPv4 enabled.
53
+ sig { returns(T.nilable(T::Boolean)) }
54
+ attr_reader :enable_i_pv4
55
+
56
+ sig { params(enable_i_pv4: T::Boolean).void }
57
+ attr_writer :enable_i_pv4
58
+
59
+ # Whether the network was created with IPv6 enabled.
60
+ sig { returns(T.nilable(T::Boolean)) }
61
+ attr_reader :enable_i_pv6
62
+
63
+ sig { params(enable_i_pv6: T::Boolean).void }
64
+ attr_writer :enable_i_pv6
65
+
66
+ # ID that uniquely identifies a network on a single machine.
67
+ sig { returns(T.nilable(String)) }
68
+ attr_reader :id
69
+
70
+ sig { params(id: String).void }
71
+ attr_writer :id
72
+
73
+ # Whether the network is providing the routing-mesh for the swarm cluster.
74
+ sig { returns(T.nilable(T::Boolean)) }
75
+ attr_reader :ingress
76
+
77
+ sig { params(ingress: T::Boolean).void }
78
+ attr_writer :ingress
79
+
80
+ # Whether the network is created to only allow internal networking connectivity.
81
+ sig { returns(T.nilable(T::Boolean)) }
82
+ attr_reader :internal
83
+
84
+ sig { params(internal: T::Boolean).void }
85
+ attr_writer :internal
86
+
87
+ sig { returns(T.nilable(DockerEngine::Network::Ipam)) }
88
+ attr_reader :ipam
89
+
90
+ sig { params(ipam: DockerEngine::Network::Ipam::OrHash).void }
91
+ attr_writer :ipam
92
+
93
+ # Metadata specific to the network being created.
94
+ sig { returns(T.nilable(T::Hash[Symbol, String])) }
95
+ attr_reader :labels
96
+
97
+ sig { params(labels: T::Hash[Symbol, String]).void }
98
+ attr_writer :labels
99
+
100
+ # Name of the network.
101
+ sig { returns(T.nilable(String)) }
102
+ attr_reader :name
103
+
104
+ sig { params(name: String).void }
105
+ attr_writer :name
106
+
107
+ # Network-specific options uses when creating the network.
108
+ sig { returns(T.nilable(T::Hash[Symbol, String])) }
109
+ attr_reader :options
110
+
111
+ sig { params(options: T::Hash[Symbol, String]).void }
112
+ attr_writer :options
113
+
114
+ # List of peer nodes for an overlay network. This field is only present for
115
+ # overlay networks, and omitted for other network types.
116
+ sig { returns(T.nilable(T::Array[DockerEngine::Network::Peer])) }
117
+ attr_reader :peers
118
+
119
+ sig { params(peers: T::Array[DockerEngine::Network::Peer::OrHash]).void }
120
+ attr_writer :peers
121
+
122
+ # The level at which the network exists (e.g. `swarm` for cluster-wide or `local`
123
+ # for machine level)
124
+ sig { returns(T.nilable(String)) }
125
+ attr_reader :scope
126
+
127
+ sig { params(scope: String).void }
128
+ attr_writer :scope
129
+
130
+ sig do
131
+ params(
132
+ attachable: T::Boolean,
133
+ config_from: DockerEngine::Network::ConfigFrom::OrHash,
134
+ config_only: T::Boolean,
135
+ created: String,
136
+ driver: String,
137
+ enable_i_pv4: T::Boolean,
138
+ enable_i_pv6: T::Boolean,
139
+ id: String,
140
+ ingress: T::Boolean,
141
+ internal: T::Boolean,
142
+ ipam: DockerEngine::Network::Ipam::OrHash,
143
+ labels: T::Hash[Symbol, String],
144
+ name: String,
145
+ options: T::Hash[Symbol, String],
146
+ peers: T::Array[DockerEngine::Network::Peer::OrHash],
147
+ scope: String
148
+ ).returns(T.attached_class)
149
+ end
150
+ def self.new(
151
+ # Whether a global / swarm scope network is manually attachable by regular
152
+ # containers from workers in swarm mode.
153
+ attachable: nil,
154
+ # The config-only network source to provide the configuration for this network.
155
+ config_from: nil,
156
+ # Whether the network is a config-only network. Config-only networks are
157
+ # placeholder networks for network configurations to be used by other networks.
158
+ # Config-only networks cannot be used directly to run containers or services.
159
+ config_only: nil,
160
+ # Date and time at which the network was created in
161
+ # [RFC 3339](https://www.ietf.org/rfc/rfc3339.txt) format with nano-seconds.
162
+ created: nil,
163
+ # The name of the driver used to create the network (e.g. `bridge`, `overlay`).
164
+ driver: nil,
165
+ # Whether the network was created with IPv4 enabled.
166
+ enable_i_pv4: nil,
167
+ # Whether the network was created with IPv6 enabled.
168
+ enable_i_pv6: nil,
169
+ # ID that uniquely identifies a network on a single machine.
170
+ id: nil,
171
+ # Whether the network is providing the routing-mesh for the swarm cluster.
172
+ ingress: nil,
173
+ # Whether the network is created to only allow internal networking connectivity.
174
+ internal: nil,
175
+ ipam: nil,
176
+ # Metadata specific to the network being created.
177
+ labels: nil,
178
+ # Name of the network.
179
+ name: nil,
180
+ # Network-specific options uses when creating the network.
181
+ options: nil,
182
+ # List of peer nodes for an overlay network. This field is only present for
183
+ # overlay networks, and omitted for other network types.
184
+ peers: nil,
185
+ # The level at which the network exists (e.g. `swarm` for cluster-wide or `local`
186
+ # for machine level)
187
+ scope: nil
188
+ )
189
+ end
190
+
191
+ sig do
192
+ override.returns(
193
+ {
194
+ attachable: T::Boolean,
195
+ config_from: DockerEngine::Network::ConfigFrom,
196
+ config_only: T::Boolean,
197
+ created: String,
198
+ driver: String,
199
+ enable_i_pv4: T::Boolean,
200
+ enable_i_pv6: T::Boolean,
201
+ id: String,
202
+ ingress: T::Boolean,
203
+ internal: T::Boolean,
204
+ ipam: DockerEngine::Network::Ipam,
205
+ labels: T::Hash[Symbol, String],
206
+ name: String,
207
+ options: T::Hash[Symbol, String],
208
+ peers: T::Array[DockerEngine::Network::Peer],
209
+ scope: String
210
+ }
211
+ )
212
+ end
213
+ def to_hash
214
+ end
215
+
216
+ class ConfigFrom < DockerEngine::Internal::Type::BaseModel
217
+ OrHash =
218
+ T.type_alias do
219
+ T.any(
220
+ DockerEngine::Network::ConfigFrom,
221
+ DockerEngine::Internal::AnyHash
222
+ )
223
+ end
224
+
225
+ # The name of the config-only network that provides the network's configuration.
226
+ # The specified network must be an existing config-only network. Only network
227
+ # names are allowed, not network IDs.
228
+ sig { returns(T.nilable(String)) }
229
+ attr_reader :network
230
+
231
+ sig { params(network: String).void }
232
+ attr_writer :network
233
+
234
+ # The config-only network source to provide the configuration for this network.
235
+ sig { params(network: String).returns(T.attached_class) }
236
+ def self.new(
237
+ # The name of the config-only network that provides the network's configuration.
238
+ # The specified network must be an existing config-only network. Only network
239
+ # names are allowed, not network IDs.
240
+ network: nil
241
+ )
242
+ end
243
+
244
+ sig { override.returns({ network: String }) }
245
+ def to_hash
246
+ end
247
+ end
248
+
249
+ class Ipam < DockerEngine::Internal::Type::BaseModel
250
+ OrHash =
251
+ T.type_alias do
252
+ T.any(DockerEngine::Network::Ipam, DockerEngine::Internal::AnyHash)
253
+ end
254
+
255
+ # List of IPAM configuration options, specified as a map:
256
+ #
257
+ # ```
258
+ # {"Subnet": <CIDR>, "IPRange": <CIDR>, "Gateway": <IP address>, "AuxAddress": <device_name:IP address>}
259
+ # ```
260
+ sig do
261
+ returns(T.nilable(T::Array[DockerEngine::Network::Ipam::Config]))
262
+ end
263
+ attr_reader :config
264
+
265
+ sig do
266
+ params(
267
+ config: T::Array[DockerEngine::Network::Ipam::Config::OrHash]
268
+ ).void
269
+ end
270
+ attr_writer :config
271
+
272
+ # Name of the IPAM driver to use.
273
+ sig { returns(T.nilable(String)) }
274
+ attr_reader :driver
275
+
276
+ sig { params(driver: String).void }
277
+ attr_writer :driver
278
+
279
+ # Driver-specific options, specified as a map.
280
+ sig { returns(T.nilable(T::Hash[Symbol, String])) }
281
+ attr_reader :options
282
+
283
+ sig { params(options: T::Hash[Symbol, String]).void }
284
+ attr_writer :options
285
+
286
+ sig do
287
+ params(
288
+ config: T::Array[DockerEngine::Network::Ipam::Config::OrHash],
289
+ driver: String,
290
+ options: T::Hash[Symbol, String]
291
+ ).returns(T.attached_class)
292
+ end
293
+ def self.new(
294
+ # List of IPAM configuration options, specified as a map:
295
+ #
296
+ # ```
297
+ # {"Subnet": <CIDR>, "IPRange": <CIDR>, "Gateway": <IP address>, "AuxAddress": <device_name:IP address>}
298
+ # ```
299
+ config: nil,
300
+ # Name of the IPAM driver to use.
301
+ driver: nil,
302
+ # Driver-specific options, specified as a map.
303
+ options: nil
304
+ )
305
+ end
306
+
307
+ sig do
308
+ override.returns(
309
+ {
310
+ config: T::Array[DockerEngine::Network::Ipam::Config],
311
+ driver: String,
312
+ options: T::Hash[Symbol, String]
313
+ }
314
+ )
315
+ end
316
+ def to_hash
317
+ end
318
+
319
+ class Config < DockerEngine::Internal::Type::BaseModel
320
+ OrHash =
321
+ T.type_alias do
322
+ T.any(
323
+ DockerEngine::Network::Ipam::Config,
324
+ DockerEngine::Internal::AnyHash
325
+ )
326
+ end
327
+
328
+ sig { returns(T.nilable(T::Hash[Symbol, String])) }
329
+ attr_reader :auxiliary_addresses
330
+
331
+ sig { params(auxiliary_addresses: T::Hash[Symbol, String]).void }
332
+ attr_writer :auxiliary_addresses
333
+
334
+ sig { returns(T.nilable(String)) }
335
+ attr_reader :gateway
336
+
337
+ sig { params(gateway: String).void }
338
+ attr_writer :gateway
339
+
340
+ sig { returns(T.nilable(String)) }
341
+ attr_reader :ip_range
342
+
343
+ sig { params(ip_range: String).void }
344
+ attr_writer :ip_range
345
+
346
+ sig { returns(T.nilable(String)) }
347
+ attr_reader :subnet
348
+
349
+ sig { params(subnet: String).void }
350
+ attr_writer :subnet
351
+
352
+ sig do
353
+ params(
354
+ auxiliary_addresses: T::Hash[Symbol, String],
355
+ gateway: String,
356
+ ip_range: String,
357
+ subnet: String
358
+ ).returns(T.attached_class)
359
+ end
360
+ def self.new(
361
+ auxiliary_addresses: nil,
362
+ gateway: nil,
363
+ ip_range: nil,
364
+ subnet: nil
365
+ )
366
+ end
367
+
368
+ sig do
369
+ override.returns(
370
+ {
371
+ auxiliary_addresses: T::Hash[Symbol, String],
372
+ gateway: String,
373
+ ip_range: String,
374
+ subnet: String
375
+ }
376
+ )
377
+ end
378
+ def to_hash
379
+ end
380
+ end
381
+ end
382
+
383
+ class Peer < DockerEngine::Internal::Type::BaseModel
384
+ OrHash =
385
+ T.type_alias do
386
+ T.any(DockerEngine::Network::Peer, DockerEngine::Internal::AnyHash)
387
+ end
388
+
389
+ # IP-address of the peer-node in the Swarm cluster.
390
+ sig { returns(T.nilable(String)) }
391
+ attr_reader :ip
392
+
393
+ sig { params(ip: String).void }
394
+ attr_writer :ip
395
+
396
+ # ID of the peer-node in the Swarm cluster.
397
+ sig { returns(T.nilable(String)) }
398
+ attr_reader :name
399
+
400
+ sig { params(name: String).void }
401
+ attr_writer :name
402
+
403
+ # represents one peer of an overlay network.
404
+ sig { params(ip: String, name: String).returns(T.attached_class) }
405
+ def self.new(
406
+ # IP-address of the peer-node in the Swarm cluster.
407
+ ip: nil,
408
+ # ID of the peer-node in the Swarm cluster.
409
+ name: nil
410
+ )
411
+ end
412
+
413
+ sig { override.returns({ ip: String, name: String }) }
414
+ def to_hash
415
+ end
416
+ end
417
+ end
418
+ end
419
+ end