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,520 @@
1
+ # frozen_string_literal: true
2
+
3
+ module DockerEngine
4
+ module Models
5
+ # @see DockerEngine::Resources::Services#inspect_
6
+ class Service < DockerEngine::Internal::Type::BaseModel
7
+ # @!attribute created_at
8
+ #
9
+ # @return [String, nil]
10
+ optional :created_at, String, api_name: :CreatedAt
11
+
12
+ # @!attribute endpoint
13
+ #
14
+ # @return [DockerEngine::Models::Service::Endpoint, nil]
15
+ optional :endpoint, -> { DockerEngine::Service::Endpoint }, api_name: :Endpoint
16
+
17
+ # @!attribute id
18
+ #
19
+ # @return [String, nil]
20
+ optional :id, String, api_name: :ID
21
+
22
+ # @!attribute job_status
23
+ # The status of the service when it is in one of ReplicatedJob or GlobalJob modes.
24
+ # Absent on Replicated and Global mode services. The JobIteration is an
25
+ # ObjectVersion, but unlike the Service's version, does not need to be sent with
26
+ # an update request.
27
+ #
28
+ # @return [DockerEngine::Models::Service::JobStatus, nil]
29
+ optional :job_status, -> { DockerEngine::Service::JobStatus }, api_name: :JobStatus
30
+
31
+ # @!attribute service_status
32
+ # The status of the service's tasks. Provided only when requested as part of a
33
+ # ServiceList operation.
34
+ #
35
+ # @return [DockerEngine::Models::Service::ServiceStatus, nil]
36
+ optional :service_status, -> { DockerEngine::Service::ServiceStatus }, api_name: :ServiceStatus
37
+
38
+ # @!attribute spec
39
+ # User modifiable configuration for a service.
40
+ #
41
+ # @return [DockerEngine::Models::Spec, nil]
42
+ optional :spec, -> { DockerEngine::Spec }, api_name: :Spec
43
+
44
+ # @!attribute updated_at
45
+ #
46
+ # @return [String, nil]
47
+ optional :updated_at, String, api_name: :UpdatedAt
48
+
49
+ # @!attribute update_status
50
+ # The status of a service update.
51
+ #
52
+ # @return [DockerEngine::Models::Service::UpdateStatus, nil]
53
+ optional :update_status, -> { DockerEngine::Service::UpdateStatus }, api_name: :UpdateStatus
54
+
55
+ # @!attribute version
56
+ # The version number of the object such as node, service, etc. This is needed to
57
+ # avoid conflicting writes. The client must send the version number along with the
58
+ # modified specification when updating these objects.
59
+ #
60
+ # This approach ensures safe concurrency and determinism in that the change on the
61
+ # object may not be applied if the version number has changed from the last read.
62
+ # In other words, if two update requests specify the same base version, only one
63
+ # of the requests can succeed. As a result, two separate update requests that
64
+ # happen at the same time will not unintentionally overwrite each other.
65
+ #
66
+ # @return [DockerEngine::Models::Service::Version, nil]
67
+ optional :version, -> { DockerEngine::Service::Version }, api_name: :Version
68
+
69
+ # @!method initialize(created_at: nil, endpoint: nil, id: nil, job_status: nil, service_status: nil, spec: nil, updated_at: nil, update_status: nil, version: nil)
70
+ # Some parameter documentations has been truncated, see
71
+ # {DockerEngine::Models::Service} for more details.
72
+ #
73
+ # @param created_at [String]
74
+ #
75
+ # @param endpoint [DockerEngine::Models::Service::Endpoint]
76
+ #
77
+ # @param id [String]
78
+ #
79
+ # @param job_status [DockerEngine::Models::Service::JobStatus] The status of the service when it is in one of ReplicatedJob or
80
+ #
81
+ # @param service_status [DockerEngine::Models::Service::ServiceStatus] The status of the service's tasks. Provided only when requested as
82
+ #
83
+ # @param spec [DockerEngine::Models::Spec] User modifiable configuration for a service.
84
+ #
85
+ # @param updated_at [String]
86
+ #
87
+ # @param update_status [DockerEngine::Models::Service::UpdateStatus] The status of a service update.
88
+ #
89
+ # @param version [DockerEngine::Models::Service::Version] The version number of the object such as node, service, etc. This is needed
90
+
91
+ # @see DockerEngine::Models::Service#endpoint
92
+ class Endpoint < DockerEngine::Internal::Type::BaseModel
93
+ # @!attribute ports
94
+ #
95
+ # @return [Array<DockerEngine::Models::Service::Endpoint::Port>, nil]
96
+ optional :ports,
97
+ -> { DockerEngine::Internal::Type::ArrayOf[DockerEngine::Service::Endpoint::Port] },
98
+ api_name: :Ports
99
+
100
+ # @!attribute spec
101
+ # Properties that can be configured to access and load balance a service.
102
+ #
103
+ # @return [DockerEngine::Models::Service::Endpoint::Spec, nil]
104
+ optional :spec, -> { DockerEngine::Service::Endpoint::Spec }, api_name: :Spec
105
+
106
+ # @!attribute virtual_ips
107
+ #
108
+ # @return [Array<DockerEngine::Models::Service::Endpoint::VirtualIP>, nil]
109
+ optional :virtual_ips,
110
+ -> { DockerEngine::Internal::Type::ArrayOf[DockerEngine::Service::Endpoint::VirtualIP] },
111
+ api_name: :VirtualIPs
112
+
113
+ # @!method initialize(ports: nil, spec: nil, virtual_ips: nil)
114
+ # @param ports [Array<DockerEngine::Models::Service::Endpoint::Port>]
115
+ #
116
+ # @param spec [DockerEngine::Models::Service::Endpoint::Spec] Properties that can be configured to access and load balance a service.
117
+ #
118
+ # @param virtual_ips [Array<DockerEngine::Models::Service::Endpoint::VirtualIP>]
119
+
120
+ class Port < DockerEngine::Internal::Type::BaseModel
121
+ # @!attribute name
122
+ #
123
+ # @return [String, nil]
124
+ optional :name, String, api_name: :Name
125
+
126
+ # @!attribute protocol
127
+ #
128
+ # @return [Symbol, DockerEngine::Models::Service::Endpoint::Port::Protocol, nil]
129
+ optional :protocol,
130
+ enum: -> {
131
+ DockerEngine::Service::Endpoint::Port::Protocol
132
+ },
133
+ api_name: :Protocol
134
+
135
+ # @!attribute published_port
136
+ # The port on the swarm hosts.
137
+ #
138
+ # @return [Integer, nil]
139
+ optional :published_port, Integer, api_name: :PublishedPort
140
+
141
+ # @!attribute publish_mode
142
+ # The mode in which port is published.
143
+ #
144
+ # <p><br /></p>
145
+ #
146
+ # - "ingress" makes the target port accessible on every node, regardless of
147
+ # whether there is a task for the service running on that node or not.
148
+ # - "host" bypasses the routing mesh and publish the port directly on the swarm
149
+ # node where that service is running.
150
+ #
151
+ # @return [Symbol, DockerEngine::Models::Service::Endpoint::Port::PublishMode, nil]
152
+ optional :publish_mode,
153
+ enum: -> { DockerEngine::Service::Endpoint::Port::PublishMode },
154
+ api_name: :PublishMode
155
+
156
+ # @!attribute target_port
157
+ # The port inside the container.
158
+ #
159
+ # @return [Integer, nil]
160
+ optional :target_port, Integer, api_name: :TargetPort
161
+
162
+ # @!method initialize(name: nil, protocol: nil, published_port: nil, publish_mode: nil, target_port: nil)
163
+ # Some parameter documentations has been truncated, see
164
+ # {DockerEngine::Models::Service::Endpoint::Port} for more details.
165
+ #
166
+ # @param name [String]
167
+ #
168
+ # @param protocol [Symbol, DockerEngine::Models::Service::Endpoint::Port::Protocol]
169
+ #
170
+ # @param published_port [Integer] The port on the swarm hosts.
171
+ #
172
+ # @param publish_mode [Symbol, DockerEngine::Models::Service::Endpoint::Port::PublishMode] The mode in which port is published.
173
+ #
174
+ # @param target_port [Integer] The port inside the container.
175
+
176
+ # @see DockerEngine::Models::Service::Endpoint::Port#protocol
177
+ module Protocol
178
+ extend DockerEngine::Internal::Type::Enum
179
+
180
+ TCP = :tcp
181
+ UDP = :udp
182
+ SCTP = :sctp
183
+
184
+ # @!method self.values
185
+ # @return [Array<Symbol>]
186
+ end
187
+
188
+ # The mode in which port is published.
189
+ #
190
+ # <p><br /></p>
191
+ #
192
+ # - "ingress" makes the target port accessible on every node, regardless of
193
+ # whether there is a task for the service running on that node or not.
194
+ # - "host" bypasses the routing mesh and publish the port directly on the swarm
195
+ # node where that service is running.
196
+ #
197
+ # @see DockerEngine::Models::Service::Endpoint::Port#publish_mode
198
+ module PublishMode
199
+ extend DockerEngine::Internal::Type::Enum
200
+
201
+ INGRESS = :ingress
202
+ HOST = :host
203
+
204
+ # @!method self.values
205
+ # @return [Array<Symbol>]
206
+ end
207
+ end
208
+
209
+ # @see DockerEngine::Models::Service::Endpoint#spec
210
+ class Spec < DockerEngine::Internal::Type::BaseModel
211
+ # @!attribute mode
212
+ # The mode of resolution to use for internal load balancing between tasks.
213
+ #
214
+ # @return [Symbol, DockerEngine::Models::Service::Endpoint::Spec::Mode, nil]
215
+ optional :mode, enum: -> { DockerEngine::Service::Endpoint::Spec::Mode }, api_name: :Mode
216
+
217
+ # @!attribute ports
218
+ # List of exposed ports that this service is accessible on from the outside. Ports
219
+ # can only be provided if `vip` resolution mode is used.
220
+ #
221
+ # @return [Array<DockerEngine::Models::Service::Endpoint::Spec::Port>, nil]
222
+ optional :ports,
223
+ -> { DockerEngine::Internal::Type::ArrayOf[DockerEngine::Service::Endpoint::Spec::Port] },
224
+ api_name: :Ports
225
+
226
+ # @!method initialize(mode: nil, ports: nil)
227
+ # Some parameter documentations has been truncated, see
228
+ # {DockerEngine::Models::Service::Endpoint::Spec} for more details.
229
+ #
230
+ # Properties that can be configured to access and load balance a service.
231
+ #
232
+ # @param mode [Symbol, DockerEngine::Models::Service::Endpoint::Spec::Mode] The mode of resolution to use for internal load balancing between tasks.
233
+ #
234
+ # @param ports [Array<DockerEngine::Models::Service::Endpoint::Spec::Port>] List of exposed ports that this service is accessible on from the
235
+
236
+ # The mode of resolution to use for internal load balancing between tasks.
237
+ #
238
+ # @see DockerEngine::Models::Service::Endpoint::Spec#mode
239
+ module Mode
240
+ extend DockerEngine::Internal::Type::Enum
241
+
242
+ VIP = :vip
243
+ DNSRR = :dnsrr
244
+
245
+ # @!method self.values
246
+ # @return [Array<Symbol>]
247
+ end
248
+
249
+ class Port < DockerEngine::Internal::Type::BaseModel
250
+ # @!attribute name
251
+ #
252
+ # @return [String, nil]
253
+ optional :name, String, api_name: :Name
254
+
255
+ # @!attribute protocol
256
+ #
257
+ # @return [Symbol, DockerEngine::Models::Service::Endpoint::Spec::Port::Protocol, nil]
258
+ optional :protocol,
259
+ enum: -> { DockerEngine::Service::Endpoint::Spec::Port::Protocol },
260
+ api_name: :Protocol
261
+
262
+ # @!attribute published_port
263
+ # The port on the swarm hosts.
264
+ #
265
+ # @return [Integer, nil]
266
+ optional :published_port, Integer, api_name: :PublishedPort
267
+
268
+ # @!attribute publish_mode
269
+ # The mode in which port is published.
270
+ #
271
+ # <p><br /></p>
272
+ #
273
+ # - "ingress" makes the target port accessible on every node, regardless of
274
+ # whether there is a task for the service running on that node or not.
275
+ # - "host" bypasses the routing mesh and publish the port directly on the swarm
276
+ # node where that service is running.
277
+ #
278
+ # @return [Symbol, DockerEngine::Models::Service::Endpoint::Spec::Port::PublishMode, nil]
279
+ optional :publish_mode,
280
+ enum: -> { DockerEngine::Service::Endpoint::Spec::Port::PublishMode },
281
+ api_name: :PublishMode
282
+
283
+ # @!attribute target_port
284
+ # The port inside the container.
285
+ #
286
+ # @return [Integer, nil]
287
+ optional :target_port, Integer, api_name: :TargetPort
288
+
289
+ # @!method initialize(name: nil, protocol: nil, published_port: nil, publish_mode: nil, target_port: nil)
290
+ # Some parameter documentations has been truncated, see
291
+ # {DockerEngine::Models::Service::Endpoint::Spec::Port} for more details.
292
+ #
293
+ # @param name [String]
294
+ #
295
+ # @param protocol [Symbol, DockerEngine::Models::Service::Endpoint::Spec::Port::Protocol]
296
+ #
297
+ # @param published_port [Integer] The port on the swarm hosts.
298
+ #
299
+ # @param publish_mode [Symbol, DockerEngine::Models::Service::Endpoint::Spec::Port::PublishMode] The mode in which port is published.
300
+ #
301
+ # @param target_port [Integer] The port inside the container.
302
+
303
+ # @see DockerEngine::Models::Service::Endpoint::Spec::Port#protocol
304
+ module Protocol
305
+ extend DockerEngine::Internal::Type::Enum
306
+
307
+ TCP = :tcp
308
+ UDP = :udp
309
+ SCTP = :sctp
310
+
311
+ # @!method self.values
312
+ # @return [Array<Symbol>]
313
+ end
314
+
315
+ # The mode in which port is published.
316
+ #
317
+ # <p><br /></p>
318
+ #
319
+ # - "ingress" makes the target port accessible on every node, regardless of
320
+ # whether there is a task for the service running on that node or not.
321
+ # - "host" bypasses the routing mesh and publish the port directly on the swarm
322
+ # node where that service is running.
323
+ #
324
+ # @see DockerEngine::Models::Service::Endpoint::Spec::Port#publish_mode
325
+ module PublishMode
326
+ extend DockerEngine::Internal::Type::Enum
327
+
328
+ INGRESS = :ingress
329
+ HOST = :host
330
+
331
+ # @!method self.values
332
+ # @return [Array<Symbol>]
333
+ end
334
+ end
335
+ end
336
+
337
+ class VirtualIP < DockerEngine::Internal::Type::BaseModel
338
+ # @!attribute addr
339
+ #
340
+ # @return [String, nil]
341
+ optional :addr, String, api_name: :Addr
342
+
343
+ # @!attribute network_id
344
+ #
345
+ # @return [String, nil]
346
+ optional :network_id, String, api_name: :NetworkID
347
+
348
+ # @!method initialize(addr: nil, network_id: nil)
349
+ # @param addr [String]
350
+ # @param network_id [String]
351
+ end
352
+ end
353
+
354
+ # @see DockerEngine::Models::Service#job_status
355
+ class JobStatus < DockerEngine::Internal::Type::BaseModel
356
+ # @!attribute job_iteration
357
+ # The version number of the object such as node, service, etc. This is needed to
358
+ # avoid conflicting writes. The client must send the version number along with the
359
+ # modified specification when updating these objects.
360
+ #
361
+ # This approach ensures safe concurrency and determinism in that the change on the
362
+ # object may not be applied if the version number has changed from the last read.
363
+ # In other words, if two update requests specify the same base version, only one
364
+ # of the requests can succeed. As a result, two separate update requests that
365
+ # happen at the same time will not unintentionally overwrite each other.
366
+ #
367
+ # @return [DockerEngine::Models::Service::JobStatus::JobIteration, nil]
368
+ optional :job_iteration,
369
+ -> {
370
+ DockerEngine::Service::JobStatus::JobIteration
371
+ },
372
+ api_name: :JobIteration
373
+
374
+ # @!attribute last_execution
375
+ # The last time, as observed by the server, that this job was started.
376
+ #
377
+ # @return [String, nil]
378
+ optional :last_execution, String, api_name: :LastExecution
379
+
380
+ # @!method initialize(job_iteration: nil, last_execution: nil)
381
+ # Some parameter documentations has been truncated, see
382
+ # {DockerEngine::Models::Service::JobStatus} for more details.
383
+ #
384
+ # The status of the service when it is in one of ReplicatedJob or GlobalJob modes.
385
+ # Absent on Replicated and Global mode services. The JobIteration is an
386
+ # ObjectVersion, but unlike the Service's version, does not need to be sent with
387
+ # an update request.
388
+ #
389
+ # @param job_iteration [DockerEngine::Models::Service::JobStatus::JobIteration] The version number of the object such as node, service, etc. This is needed
390
+ #
391
+ # @param last_execution [String] The last time, as observed by the server, that this job was
392
+
393
+ # @see DockerEngine::Models::Service::JobStatus#job_iteration
394
+ class JobIteration < DockerEngine::Internal::Type::BaseModel
395
+ # @!attribute index
396
+ #
397
+ # @return [Integer, nil]
398
+ optional :index, Integer, api_name: :Index
399
+
400
+ # @!method initialize(index: nil)
401
+ # The version number of the object such as node, service, etc. This is needed to
402
+ # avoid conflicting writes. The client must send the version number along with the
403
+ # modified specification when updating these objects.
404
+ #
405
+ # This approach ensures safe concurrency and determinism in that the change on the
406
+ # object may not be applied if the version number has changed from the last read.
407
+ # In other words, if two update requests specify the same base version, only one
408
+ # of the requests can succeed. As a result, two separate update requests that
409
+ # happen at the same time will not unintentionally overwrite each other.
410
+ #
411
+ # @param index [Integer]
412
+ end
413
+ end
414
+
415
+ # @see DockerEngine::Models::Service#service_status
416
+ class ServiceStatus < DockerEngine::Internal::Type::BaseModel
417
+ # @!attribute completed_tasks
418
+ # The number of tasks for a job that are in the Completed state. This field must
419
+ # be cross-referenced with the service type, as the value of 0 may mean the
420
+ # service is not in a job mode, or it may mean the job-mode service has no tasks
421
+ # yet Completed.
422
+ #
423
+ # @return [Integer, nil]
424
+ optional :completed_tasks, Integer, api_name: :CompletedTasks
425
+
426
+ # @!attribute desired_tasks
427
+ # The number of tasks for the service desired to be running. For replicated
428
+ # services, this is the replica count from the service spec. For global services,
429
+ # this is computed by taking count of all tasks for the service with a Desired
430
+ # State other than Shutdown.
431
+ #
432
+ # @return [Integer, nil]
433
+ optional :desired_tasks, Integer, api_name: :DesiredTasks
434
+
435
+ # @!attribute running_tasks
436
+ # The number of tasks for the service currently in the Running state.
437
+ #
438
+ # @return [Integer, nil]
439
+ optional :running_tasks, Integer, api_name: :RunningTasks
440
+
441
+ # @!method initialize(completed_tasks: nil, desired_tasks: nil, running_tasks: nil)
442
+ # Some parameter documentations has been truncated, see
443
+ # {DockerEngine::Models::Service::ServiceStatus} for more details.
444
+ #
445
+ # The status of the service's tasks. Provided only when requested as part of a
446
+ # ServiceList operation.
447
+ #
448
+ # @param completed_tasks [Integer] The number of tasks for a job that are in the Completed state.
449
+ #
450
+ # @param desired_tasks [Integer] The number of tasks for the service desired to be running.
451
+ #
452
+ # @param running_tasks [Integer] The number of tasks for the service currently in the Running state.
453
+ end
454
+
455
+ # @see DockerEngine::Models::Service#update_status
456
+ class UpdateStatus < DockerEngine::Internal::Type::BaseModel
457
+ # @!attribute completed_at
458
+ #
459
+ # @return [String, nil]
460
+ optional :completed_at, String, api_name: :CompletedAt
461
+
462
+ # @!attribute message
463
+ #
464
+ # @return [String, nil]
465
+ optional :message, String, api_name: :Message
466
+
467
+ # @!attribute started_at
468
+ #
469
+ # @return [String, nil]
470
+ optional :started_at, String, api_name: :StartedAt
471
+
472
+ # @!attribute state
473
+ #
474
+ # @return [Symbol, DockerEngine::Models::Service::UpdateStatus::State, nil]
475
+ optional :state, enum: -> { DockerEngine::Service::UpdateStatus::State }, api_name: :State
476
+
477
+ # @!method initialize(completed_at: nil, message: nil, started_at: nil, state: nil)
478
+ # The status of a service update.
479
+ #
480
+ # @param completed_at [String]
481
+ # @param message [String]
482
+ # @param started_at [String]
483
+ # @param state [Symbol, DockerEngine::Models::Service::UpdateStatus::State]
484
+
485
+ # @see DockerEngine::Models::Service::UpdateStatus#state
486
+ module State
487
+ extend DockerEngine::Internal::Type::Enum
488
+
489
+ UPDATING = :updating
490
+ PAUSED = :paused
491
+ COMPLETED = :completed
492
+
493
+ # @!method self.values
494
+ # @return [Array<Symbol>]
495
+ end
496
+ end
497
+
498
+ # @see DockerEngine::Models::Service#version
499
+ class Version < DockerEngine::Internal::Type::BaseModel
500
+ # @!attribute index
501
+ #
502
+ # @return [Integer, nil]
503
+ optional :index, Integer, api_name: :Index
504
+
505
+ # @!method initialize(index: nil)
506
+ # The version number of the object such as node, service, etc. This is needed to
507
+ # avoid conflicting writes. The client must send the version number along with the
508
+ # modified specification when updating these objects.
509
+ #
510
+ # This approach ensures safe concurrency and determinism in that the change on the
511
+ # object may not be applied if the version number has changed from the last read.
512
+ # In other words, if two update requests specify the same base version, only one
513
+ # of the requests can succeed. As a result, two separate update requests that
514
+ # happen at the same time will not unintentionally overwrite each other.
515
+ #
516
+ # @param index [Integer]
517
+ end
518
+ end
519
+ end
520
+ end
@@ -0,0 +1,34 @@
1
+ # frozen_string_literal: true
2
+
3
+ module DockerEngine
4
+ module Models
5
+ # @see DockerEngine::Resources::Services#create
6
+ class ServiceCreateParams < DockerEngine::Internal::Type::BaseModel
7
+ extend DockerEngine::Internal::Type::RequestParameters::Converter
8
+ include DockerEngine::Internal::Type::RequestParameters
9
+
10
+ # @!attribute spec
11
+ # User modifiable configuration for a service.
12
+ #
13
+ # @return [DockerEngine::Models::ServiceCreateParams::Spec]
14
+ required :spec, -> { DockerEngine::ServiceCreateParams::Spec }
15
+
16
+ # @!attribute x_registry_auth
17
+ #
18
+ # @return [String, nil]
19
+ optional :x_registry_auth, String
20
+
21
+ # @!method initialize(spec:, x_registry_auth: nil, request_options: {})
22
+ # @param spec [DockerEngine::Models::ServiceCreateParams::Spec] User modifiable configuration for a service.
23
+ #
24
+ # @param x_registry_auth [String]
25
+ #
26
+ # @param request_options [DockerEngine::RequestOptions, Hash{Symbol=>Object}]
27
+
28
+ class Spec < DockerEngine::Models::Spec
29
+ # @!method initialize
30
+ # User modifiable configuration for a service.
31
+ end
32
+ end
33
+ end
34
+ end
@@ -0,0 +1,32 @@
1
+ # frozen_string_literal: true
2
+
3
+ module DockerEngine
4
+ module Models
5
+ # @see DockerEngine::Resources::Services#create
6
+ class ServiceCreateResponse < DockerEngine::Internal::Type::BaseModel
7
+ # @!attribute id
8
+ # The ID of the created service.
9
+ #
10
+ # @return [String, nil]
11
+ optional :id, String, api_name: :ID
12
+
13
+ # @!attribute warnings
14
+ # Optional warning message.
15
+ #
16
+ # FIXME(thaJeztah): this should have "omitempty" in the generated type.
17
+ #
18
+ # @return [Array<String>, nil]
19
+ optional :warnings, DockerEngine::Internal::Type::ArrayOf[String], api_name: :Warnings, nil?: true
20
+
21
+ # @!method initialize(id: nil, warnings: nil)
22
+ # Some parameter documentations has been truncated, see
23
+ # {DockerEngine::Models::ServiceCreateResponse} for more details.
24
+ #
25
+ # contains the information returned to a client on the creation of a new service.
26
+ #
27
+ # @param id [String] The ID of the created service.
28
+ #
29
+ # @param warnings [Array<String>, nil] Optional warning message.
30
+ end
31
+ end
32
+ end
@@ -0,0 +1,14 @@
1
+ # frozen_string_literal: true
2
+
3
+ module DockerEngine
4
+ module Models
5
+ # @see DockerEngine::Resources::Services#delete
6
+ class ServiceDeleteParams < DockerEngine::Internal::Type::BaseModel
7
+ extend DockerEngine::Internal::Type::RequestParameters::Converter
8
+ include DockerEngine::Internal::Type::RequestParameters
9
+
10
+ # @!method initialize(request_options: {})
11
+ # @param request_options [DockerEngine::RequestOptions, Hash{Symbol=>Object}]
12
+ end
13
+ end
14
+ end
@@ -0,0 +1,22 @@
1
+ # frozen_string_literal: true
2
+
3
+ module DockerEngine
4
+ module Models
5
+ # @see DockerEngine::Resources::Services#inspect_
6
+ class ServiceInspectParams < DockerEngine::Internal::Type::BaseModel
7
+ extend DockerEngine::Internal::Type::RequestParameters::Converter
8
+ include DockerEngine::Internal::Type::RequestParameters
9
+
10
+ # @!attribute insert_defaults
11
+ # Fill empty fields with default values.
12
+ #
13
+ # @return [Boolean, nil]
14
+ optional :insert_defaults, DockerEngine::Internal::Type::Boolean
15
+
16
+ # @!method initialize(insert_defaults: nil, request_options: {})
17
+ # @param insert_defaults [Boolean] Fill empty fields with default values.
18
+ #
19
+ # @param request_options [DockerEngine::RequestOptions, Hash{Symbol=>Object}]
20
+ end
21
+ end
22
+ end
@@ -0,0 +1,41 @@
1
+ # frozen_string_literal: true
2
+
3
+ module DockerEngine
4
+ module Models
5
+ # @see DockerEngine::Resources::Services#list
6
+ class ServiceListParams < DockerEngine::Internal::Type::BaseModel
7
+ extend DockerEngine::Internal::Type::RequestParameters::Converter
8
+ include DockerEngine::Internal::Type::RequestParameters
9
+
10
+ # @!attribute filters
11
+ # A JSON encoded value of the filters (a `map[string][]string`) to process on the
12
+ # services list.
13
+ #
14
+ # Available filters:
15
+ #
16
+ # - `id=<service id>`
17
+ # - `label=<service label>`
18
+ # - `mode=["replicated"|"global"]`
19
+ # - `name=<service name>`
20
+ #
21
+ # @return [String, nil]
22
+ optional :filters, String
23
+
24
+ # @!attribute status
25
+ # Include service status, with count of running and desired tasks.
26
+ #
27
+ # @return [Boolean, nil]
28
+ optional :status, DockerEngine::Internal::Type::Boolean
29
+
30
+ # @!method initialize(filters: nil, status: nil, request_options: {})
31
+ # Some parameter documentations has been truncated, see
32
+ # {DockerEngine::Models::ServiceListParams} for more details.
33
+ #
34
+ # @param filters [String] A JSON encoded value of the filters (a `map[string][]string`) to
35
+ #
36
+ # @param status [Boolean] Include service status, with count of running and desired tasks.
37
+ #
38
+ # @param request_options [DockerEngine::RequestOptions, Hash{Symbol=>Object}]
39
+ end
40
+ end
41
+ end
@@ -0,0 +1,8 @@
1
+ # frozen_string_literal: true
2
+
3
+ module DockerEngine
4
+ module Models
5
+ # @type [DockerEngine::Internal::Type::Converter]
6
+ ServiceListResponse = DockerEngine::Internal::Type::ArrayOf[-> { DockerEngine::Service }]
7
+ end
8
+ end