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,38 @@
1
+ # frozen_string_literal: true
2
+
3
+ module DockerEngine
4
+ module Models
5
+ # @see DockerEngine::Resources::Containers#delete
6
+ class ContainerDeleteParams < DockerEngine::Internal::Type::BaseModel
7
+ extend DockerEngine::Internal::Type::RequestParameters::Converter
8
+ include DockerEngine::Internal::Type::RequestParameters
9
+
10
+ # @!attribute force
11
+ # If the container is running, kill it before removing it.
12
+ #
13
+ # @return [Boolean, nil]
14
+ optional :force, DockerEngine::Internal::Type::Boolean
15
+
16
+ # @!attribute link
17
+ # Remove the specified link associated with the container.
18
+ #
19
+ # @return [Boolean, nil]
20
+ optional :link, DockerEngine::Internal::Type::Boolean
21
+
22
+ # @!attribute v
23
+ # Remove anonymous volumes associated with the container.
24
+ #
25
+ # @return [Boolean, nil]
26
+ optional :v, DockerEngine::Internal::Type::Boolean
27
+
28
+ # @!method initialize(force: nil, link: nil, v: nil, request_options: {})
29
+ # @param force [Boolean] If the container is running, kill it before removing it.
30
+ #
31
+ # @param link [Boolean] Remove the specified link associated with the container.
32
+ #
33
+ # @param v [Boolean] Remove anonymous volumes associated with the container.
34
+ #
35
+ # @param request_options [DockerEngine::RequestOptions, Hash{Symbol=>Object}]
36
+ end
37
+ end
38
+ end
@@ -0,0 +1,22 @@
1
+ # frozen_string_literal: true
2
+
3
+ module DockerEngine
4
+ module Models
5
+ # @see DockerEngine::Resources::Containers#inspect_
6
+ class ContainerInspectParams < DockerEngine::Internal::Type::BaseModel
7
+ extend DockerEngine::Internal::Type::RequestParameters::Converter
8
+ include DockerEngine::Internal::Type::RequestParameters
9
+
10
+ # @!attribute size
11
+ # Return the size of container as fields `SizeRw` and `SizeRootFs`
12
+ #
13
+ # @return [Boolean, nil]
14
+ optional :size, DockerEngine::Internal::Type::Boolean
15
+
16
+ # @!method initialize(size: nil, request_options: {})
17
+ # @param size [Boolean] Return the size of container as fields `SizeRw` and `SizeRootFs`
18
+ #
19
+ # @param request_options [DockerEngine::RequestOptions, Hash{Symbol=>Object}]
20
+ end
21
+ end
22
+ end
@@ -0,0 +1,25 @@
1
+ # frozen_string_literal: true
2
+
3
+ module DockerEngine
4
+ module Models
5
+ # @see DockerEngine::Resources::Containers#kill
6
+ class ContainerKillParams < DockerEngine::Internal::Type::BaseModel
7
+ extend DockerEngine::Internal::Type::RequestParameters::Converter
8
+ include DockerEngine::Internal::Type::RequestParameters
9
+
10
+ # @!attribute signal
11
+ # Signal to send to the container as an integer or string (e.g. `SIGINT`).
12
+ #
13
+ # @return [String, nil]
14
+ optional :signal, String
15
+
16
+ # @!method initialize(signal: nil, request_options: {})
17
+ # Some parameter documentations has been truncated, see
18
+ # {DockerEngine::Models::ContainerKillParams} for more details.
19
+ #
20
+ # @param signal [String] Signal to send to the container as an integer or string (e.g. `SIGINT`).
21
+ #
22
+ # @param request_options [DockerEngine::RequestOptions, Hash{Symbol=>Object}]
23
+ end
24
+ end
25
+ end
@@ -0,0 +1,70 @@
1
+ # frozen_string_literal: true
2
+
3
+ module DockerEngine
4
+ module Models
5
+ # @see DockerEngine::Resources::Containers#list
6
+ class ContainerListParams < DockerEngine::Internal::Type::BaseModel
7
+ extend DockerEngine::Internal::Type::RequestParameters::Converter
8
+ include DockerEngine::Internal::Type::RequestParameters
9
+
10
+ # @!attribute all
11
+ # Return all containers. By default, only running containers are shown.
12
+ #
13
+ # @return [Boolean, nil]
14
+ optional :all, DockerEngine::Internal::Type::Boolean
15
+
16
+ # @!attribute filters
17
+ # Filters to process on the container list, encoded as JSON (a
18
+ # `map[string][]string`). For example, `{"status": ["paused"]}` will only return
19
+ # paused containers.
20
+ #
21
+ # Available filters:
22
+ #
23
+ # - `ancestor`=(`<image-name>[:<tag>]`, `<image id>`, or `<image@digest>`)
24
+ # - `before`=(`<container id>` or `<container name>`)
25
+ # - `expose`=(`<port>[/<proto>]`|`<startport-endport>/[<proto>]`)
26
+ # - `exited=<int>` containers with exit code of `<int>`
27
+ # - `health`=(`starting`|`healthy`|`unhealthy`|`none`)
28
+ # - `id=<ID>` a container's ID
29
+ # - `isolation=`(`default`|`process`|`hyperv`) (Windows daemon only)
30
+ # - `is-task=`(`true`|`false`)
31
+ # - `label=key` or `label="key=value"` of a container label
32
+ # - `name=<name>` a container's name
33
+ # - `network`=(`<network id>` or `<network name>`)
34
+ # - `publish`=(`<port>[/<proto>]`|`<startport-endport>/[<proto>]`)
35
+ # - `since`=(`<container id>` or `<container name>`)
36
+ # - `status=`(`created`|`restarting`|`running`|`removing`|`paused`|`exited`|`dead`)
37
+ # - `volume`=(`<volume name>` or `<mount point destination>`)
38
+ #
39
+ # @return [String, nil]
40
+ optional :filters, String
41
+
42
+ # @!attribute limit
43
+ # Return this number of most recently created containers, including non-running
44
+ # ones.
45
+ #
46
+ # @return [Integer, nil]
47
+ optional :limit, Integer
48
+
49
+ # @!attribute size
50
+ # Return the size of container as fields `SizeRw` and `SizeRootFs`.
51
+ #
52
+ # @return [Boolean, nil]
53
+ optional :size, DockerEngine::Internal::Type::Boolean
54
+
55
+ # @!method initialize(all: nil, filters: nil, limit: nil, size: nil, request_options: {})
56
+ # Some parameter documentations has been truncated, see
57
+ # {DockerEngine::Models::ContainerListParams} for more details.
58
+ #
59
+ # @param all [Boolean] Return all containers. By default, only running containers are shown.
60
+ #
61
+ # @param filters [String] Filters to process on the container list, encoded as JSON (a
62
+ #
63
+ # @param limit [Integer] Return this number of most recently created containers, including
64
+ #
65
+ # @param size [Boolean] Return the size of container as fields `SizeRw` and `SizeRootFs`.
66
+ #
67
+ # @param request_options [DockerEngine::RequestOptions, Hash{Symbol=>Object}]
68
+ end
69
+ end
70
+ end
@@ -0,0 +1,8 @@
1
+ # frozen_string_literal: true
2
+
3
+ module DockerEngine
4
+ module Models
5
+ # @type [DockerEngine::Internal::Type::Converter]
6
+ ContainerListResponse = DockerEngine::Internal::Type::ArrayOf[-> { DockerEngine::Summary }]
7
+ end
8
+ end
@@ -0,0 +1,74 @@
1
+ # frozen_string_literal: true
2
+
3
+ module DockerEngine
4
+ module Models
5
+ # @see DockerEngine::Resources::Containers#logs
6
+ class ContainerLogsParams < DockerEngine::Internal::Type::BaseModel
7
+ extend DockerEngine::Internal::Type::RequestParameters::Converter
8
+ include DockerEngine::Internal::Type::RequestParameters
9
+
10
+ # @!attribute follow
11
+ # Keep connection after returning logs.
12
+ #
13
+ # @return [Boolean, nil]
14
+ optional :follow, DockerEngine::Internal::Type::Boolean
15
+
16
+ # @!attribute since
17
+ # Only return logs since this time, as a UNIX timestamp
18
+ #
19
+ # @return [Integer, nil]
20
+ optional :since, Integer
21
+
22
+ # @!attribute stderr
23
+ # Return logs from `stderr`
24
+ #
25
+ # @return [Boolean, nil]
26
+ optional :stderr, DockerEngine::Internal::Type::Boolean
27
+
28
+ # @!attribute stdout
29
+ # Return logs from `stdout`
30
+ #
31
+ # @return [Boolean, nil]
32
+ optional :stdout, DockerEngine::Internal::Type::Boolean
33
+
34
+ # @!attribute tail
35
+ # Only return this number of log lines from the end of the logs. Specify as an
36
+ # integer or `all` to output all log lines.
37
+ #
38
+ # @return [String, nil]
39
+ optional :tail, String
40
+
41
+ # @!attribute timestamps
42
+ # Add timestamps to every log line
43
+ #
44
+ # @return [Boolean, nil]
45
+ optional :timestamps, DockerEngine::Internal::Type::Boolean
46
+
47
+ # @!attribute until_
48
+ # Only return logs before this time, as a UNIX timestamp
49
+ #
50
+ # @return [Integer, nil]
51
+ optional :until_, Integer
52
+
53
+ # @!method initialize(follow: nil, since: nil, stderr: nil, stdout: nil, tail: nil, timestamps: nil, until_: nil, request_options: {})
54
+ # Some parameter documentations has been truncated, see
55
+ # {DockerEngine::Models::ContainerLogsParams} for more details.
56
+ #
57
+ # @param follow [Boolean] Keep connection after returning logs.
58
+ #
59
+ # @param since [Integer] Only return logs since this time, as a UNIX timestamp
60
+ #
61
+ # @param stderr [Boolean] Return logs from `stderr`
62
+ #
63
+ # @param stdout [Boolean] Return logs from `stdout`
64
+ #
65
+ # @param tail [String] Only return this number of log lines from the end of the logs.
66
+ #
67
+ # @param timestamps [Boolean] Add timestamps to every log line
68
+ #
69
+ # @param until_ [Integer] Only return logs before this time, as a UNIX timestamp
70
+ #
71
+ # @param request_options [DockerEngine::RequestOptions, Hash{Symbol=>Object}]
72
+ end
73
+ end
74
+ end
@@ -0,0 +1,27 @@
1
+ # frozen_string_literal: true
2
+
3
+ module DockerEngine
4
+ module Models
5
+ # @see DockerEngine::Resources::Containers#start
6
+ class ContainerStartParams < DockerEngine::Internal::Type::BaseModel
7
+ extend DockerEngine::Internal::Type::RequestParameters::Converter
8
+ include DockerEngine::Internal::Type::RequestParameters
9
+
10
+ # @!attribute detach_keys
11
+ # Override the key sequence for detaching a container. Format is a single
12
+ # character `[a-Z]` or `ctrl-<value>` where `<value>` is one of: `a-z`, `@`, `^`,
13
+ # `[`, `,` or `_`.
14
+ #
15
+ # @return [String, nil]
16
+ optional :detach_keys, String
17
+
18
+ # @!method initialize(detach_keys: nil, request_options: {})
19
+ # Some parameter documentations has been truncated, see
20
+ # {DockerEngine::Models::ContainerStartParams} for more details.
21
+ #
22
+ # @param detach_keys [String] Override the key sequence for detaching a container. Format is a
23
+ #
24
+ # @param request_options [DockerEngine::RequestOptions, Hash{Symbol=>Object}]
25
+ end
26
+ end
27
+ end
@@ -0,0 +1,33 @@
1
+ # frozen_string_literal: true
2
+
3
+ module DockerEngine
4
+ module Models
5
+ # @see DockerEngine::Resources::Containers#stop
6
+ class ContainerStopParams < DockerEngine::Internal::Type::BaseModel
7
+ extend DockerEngine::Internal::Type::RequestParameters::Converter
8
+ include DockerEngine::Internal::Type::RequestParameters
9
+
10
+ # @!attribute signal
11
+ # Signal to send to the container as an integer or string (e.g. `SIGINT`).
12
+ #
13
+ # @return [String, nil]
14
+ optional :signal, String
15
+
16
+ # @!attribute t
17
+ # Number of seconds to wait before killing the container
18
+ #
19
+ # @return [Integer, nil]
20
+ optional :t, Integer
21
+
22
+ # @!method initialize(signal: nil, t: nil, request_options: {})
23
+ # Some parameter documentations has been truncated, see
24
+ # {DockerEngine::Models::ContainerStopParams} for more details.
25
+ #
26
+ # @param signal [String] Signal to send to the container as an integer or string (e.g. `SIGINT`).
27
+ #
28
+ # @param t [Integer] Number of seconds to wait before killing the container
29
+ #
30
+ # @param request_options [DockerEngine::RequestOptions, Hash{Symbol=>Object}]
31
+ end
32
+ end
33
+ end
@@ -0,0 +1,348 @@
1
+ # frozen_string_literal: true
2
+
3
+ module DockerEngine
4
+ module Models
5
+ class CreateRequest < DockerEngine::Internal::Type::BaseModel
6
+ # @!attribute cluster_volume_spec
7
+ # Cluster-specific options used to create the volume.
8
+ #
9
+ # @return [DockerEngine::Models::CreateRequest::ClusterVolumeSpec, nil]
10
+ optional :cluster_volume_spec,
11
+ -> { DockerEngine::CreateRequest::ClusterVolumeSpec },
12
+ api_name: :ClusterVolumeSpec
13
+
14
+ # @!attribute driver
15
+ # Name of the volume driver to use.
16
+ #
17
+ # @return [String, nil]
18
+ optional :driver, String, api_name: :Driver
19
+
20
+ # @!attribute driver_opts
21
+ # A mapping of driver options and values. These options are passed directly to the
22
+ # driver and are driver specific.
23
+ #
24
+ # @return [Hash{Symbol=>String}, nil]
25
+ optional :driver_opts, DockerEngine::Internal::Type::HashOf[String], api_name: :DriverOpts
26
+
27
+ # @!attribute labels
28
+ # User-defined key/value metadata.
29
+ #
30
+ # @return [Hash{Symbol=>String}, nil]
31
+ optional :labels, DockerEngine::Internal::Type::HashOf[String], api_name: :Labels
32
+
33
+ # @!attribute name
34
+ # The new volume's name. If not specified, Docker generates a name.
35
+ #
36
+ # @return [String, nil]
37
+ optional :name, String, api_name: :Name
38
+
39
+ # @!method initialize(cluster_volume_spec: nil, driver: nil, driver_opts: nil, labels: nil, name: nil)
40
+ # Some parameter documentations has been truncated, see
41
+ # {DockerEngine::Models::CreateRequest} for more details.
42
+ #
43
+ # Volume configuration
44
+ #
45
+ # @param cluster_volume_spec [DockerEngine::Models::CreateRequest::ClusterVolumeSpec] Cluster-specific options used to create the volume.
46
+ #
47
+ # @param driver [String] Name of the volume driver to use.
48
+ #
49
+ # @param driver_opts [Hash{Symbol=>String}] A mapping of driver options and values. These options are
50
+ #
51
+ # @param labels [Hash{Symbol=>String}] User-defined key/value metadata.
52
+ #
53
+ # @param name [String] The new volume's name. If not specified, Docker generates a name.
54
+
55
+ # @see DockerEngine::Models::CreateRequest#cluster_volume_spec
56
+ class ClusterVolumeSpec < DockerEngine::Internal::Type::BaseModel
57
+ # @!attribute access_mode
58
+ # Defines how the volume is used by tasks.
59
+ #
60
+ # @return [DockerEngine::Models::CreateRequest::ClusterVolumeSpec::AccessMode, nil]
61
+ optional :access_mode,
62
+ -> { DockerEngine::CreateRequest::ClusterVolumeSpec::AccessMode },
63
+ api_name: :AccessMode
64
+
65
+ # @!attribute group
66
+ # Group defines the volume group of this volume. Volumes belonging to the same
67
+ # group can be referred to by group name when creating Services. Referring to a
68
+ # volume by group instructs Swarm to treat volumes in that group interchangeably
69
+ # for the purpose of scheduling. Volumes with an empty string for a group
70
+ # technically all belong to the same, emptystring group.
71
+ #
72
+ # @return [String, nil]
73
+ optional :group, String, api_name: :Group
74
+
75
+ # @!method initialize(access_mode: nil, group: nil)
76
+ # Some parameter documentations has been truncated, see
77
+ # {DockerEngine::Models::CreateRequest::ClusterVolumeSpec} for more details.
78
+ #
79
+ # Cluster-specific options used to create the volume.
80
+ #
81
+ # @param access_mode [DockerEngine::Models::CreateRequest::ClusterVolumeSpec::AccessMode] Defines how the volume is used by tasks.
82
+ #
83
+ # @param group [String] Group defines the volume group of this volume. Volumes belonging to
84
+
85
+ # @see DockerEngine::Models::CreateRequest::ClusterVolumeSpec#access_mode
86
+ class AccessMode < DockerEngine::Internal::Type::BaseModel
87
+ # @!attribute accessibility_requirements
88
+ # Requirements for the accessible topology of the volume. These fields are
89
+ # optional. For an in-depth description of what these fields mean, see the CSI
90
+ # specification.
91
+ #
92
+ # @return [DockerEngine::Models::CreateRequest::ClusterVolumeSpec::AccessMode::AccessibilityRequirements, nil]
93
+ optional :accessibility_requirements,
94
+ -> {
95
+ DockerEngine::CreateRequest::ClusterVolumeSpec::AccessMode::AccessibilityRequirements
96
+ },
97
+ api_name: :AccessibilityRequirements
98
+
99
+ # @!attribute availability
100
+ # The availability of the volume for use in tasks.
101
+ #
102
+ # - `active` The volume is fully available for scheduling on the cluster
103
+ # - `pause` No new workloads should use the volume, but existing workloads are not
104
+ # stopped.
105
+ # - `drain` All workloads using this volume should be stopped and rescheduled, and
106
+ # no new ones should be started.
107
+ #
108
+ # @return [Symbol, DockerEngine::Models::CreateRequest::ClusterVolumeSpec::AccessMode::Availability, nil]
109
+ optional :availability,
110
+ enum: -> { DockerEngine::CreateRequest::ClusterVolumeSpec::AccessMode::Availability },
111
+ api_name: :Availability
112
+
113
+ # @!attribute capacity_range
114
+ # The desired capacity that the volume should be created with. If empty, the
115
+ # plugin will decide the capacity.
116
+ #
117
+ # @return [DockerEngine::Models::CreateRequest::ClusterVolumeSpec::AccessMode::CapacityRange, nil]
118
+ optional :capacity_range,
119
+ -> { DockerEngine::CreateRequest::ClusterVolumeSpec::AccessMode::CapacityRange },
120
+ api_name: :CapacityRange
121
+
122
+ # @!attribute mount_volume
123
+ # Options for using this volume as a Mount-type volume.
124
+ #
125
+ # Either MountVolume or BlockVolume, but not both, must be
126
+ # present.
127
+ #
128
+ # properties: FsType: type: "string" description: | Specifies the filesystem type
129
+ # for the mount volume. Optional. MountFlags: type: "array" description: | Flags
130
+ # to pass when mounting the volume. Optional. items: type: "string" BlockVolume:
131
+ # type: "object" description: | Options for using this volume as a Block-type
132
+ # volume. Intentionally empty.
133
+ #
134
+ # @return [Object, nil]
135
+ optional :mount_volume, DockerEngine::Internal::Type::Unknown, api_name: :MountVolume
136
+
137
+ # @!attribute scope
138
+ # The set of nodes this volume can be used on at one time.
139
+ #
140
+ # - `single` The volume may only be scheduled to one node at a time.
141
+ # - `multi` the volume may be scheduled to any supported number of nodes at a
142
+ # time.
143
+ #
144
+ # @return [Symbol, DockerEngine::Models::CreateRequest::ClusterVolumeSpec::AccessMode::Scope, nil]
145
+ optional :scope,
146
+ enum: -> { DockerEngine::CreateRequest::ClusterVolumeSpec::AccessMode::Scope },
147
+ api_name: :Scope
148
+
149
+ # @!attribute secrets
150
+ # Swarm Secrets that are passed to the CSI storage plugin when operating on this
151
+ # volume.
152
+ #
153
+ # @return [Array<DockerEngine::Models::CreateRequest::ClusterVolumeSpec::AccessMode::Secret>, nil]
154
+ optional :secrets,
155
+ -> {
156
+ DockerEngine::Internal::Type::ArrayOf[DockerEngine::CreateRequest::ClusterVolumeSpec::AccessMode::Secret]
157
+ },
158
+ api_name: :Secrets
159
+
160
+ # @!attribute sharing
161
+ # The number and way that different tasks can use this volume at one time.
162
+ #
163
+ # - `none` The volume may only be used by one task at a time.
164
+ # - `readonly` The volume may be used by any number of tasks, but they all must
165
+ # mount the volume as readonly
166
+ # - `onewriter` The volume may be used by any number of tasks, but only one may
167
+ # mount it as read/write.
168
+ # - `all` The volume may have any number of readers and writers.
169
+ #
170
+ # @return [Symbol, DockerEngine::Models::CreateRequest::ClusterVolumeSpec::AccessMode::Sharing, nil]
171
+ optional :sharing,
172
+ enum: -> { DockerEngine::CreateRequest::ClusterVolumeSpec::AccessMode::Sharing },
173
+ api_name: :Sharing
174
+
175
+ # @!method initialize(accessibility_requirements: nil, availability: nil, capacity_range: nil, mount_volume: nil, scope: nil, secrets: nil, sharing: nil)
176
+ # Some parameter documentations has been truncated, see
177
+ # {DockerEngine::Models::CreateRequest::ClusterVolumeSpec::AccessMode} for more
178
+ # details.
179
+ #
180
+ # Defines how the volume is used by tasks.
181
+ #
182
+ # @param accessibility_requirements [DockerEngine::Models::CreateRequest::ClusterVolumeSpec::AccessMode::AccessibilityRequirements] Requirements for the accessible topology of the volume. These
183
+ #
184
+ # @param availability [Symbol, DockerEngine::Models::CreateRequest::ClusterVolumeSpec::AccessMode::Availability] The availability of the volume for use in tasks.
185
+ #
186
+ # @param capacity_range [DockerEngine::Models::CreateRequest::ClusterVolumeSpec::AccessMode::CapacityRange] The desired capacity that the volume should be created with. If
187
+ #
188
+ # @param mount_volume [Object] Options for using this volume as a Mount-type volume.
189
+ #
190
+ # @param scope [Symbol, DockerEngine::Models::CreateRequest::ClusterVolumeSpec::AccessMode::Scope] The set of nodes this volume can be used on at one time.
191
+ #
192
+ # @param secrets [Array<DockerEngine::Models::CreateRequest::ClusterVolumeSpec::AccessMode::Secret>] Swarm Secrets that are passed to the CSI storage plugin when
193
+ #
194
+ # @param sharing [Symbol, DockerEngine::Models::CreateRequest::ClusterVolumeSpec::AccessMode::Sharing] The number and way that different tasks can use this volume
195
+
196
+ # @see DockerEngine::Models::CreateRequest::ClusterVolumeSpec::AccessMode#accessibility_requirements
197
+ class AccessibilityRequirements < DockerEngine::Internal::Type::BaseModel
198
+ # @!attribute preferred
199
+ # A list of topologies that the volume should attempt to be provisioned in.
200
+ #
201
+ # @return [Array<Hash{Symbol=>String}>, nil]
202
+ optional :preferred,
203
+ DockerEngine::Internal::Type::ArrayOf[DockerEngine::Internal::Type::HashOf[String]],
204
+ api_name: :Preferred
205
+
206
+ # @!attribute requisite
207
+ # A list of required topologies, at least one of which the volume must be
208
+ # accessible from.
209
+ #
210
+ # @return [Array<Hash{Symbol=>String}>, nil]
211
+ optional :requisite,
212
+ DockerEngine::Internal::Type::ArrayOf[DockerEngine::Internal::Type::HashOf[String]],
213
+ api_name: :Requisite
214
+
215
+ # @!method initialize(preferred: nil, requisite: nil)
216
+ # Some parameter documentations has been truncated, see
217
+ # {DockerEngine::Models::CreateRequest::ClusterVolumeSpec::AccessMode::AccessibilityRequirements}
218
+ # for more details.
219
+ #
220
+ # Requirements for the accessible topology of the volume. These fields are
221
+ # optional. For an in-depth description of what these fields mean, see the CSI
222
+ # specification.
223
+ #
224
+ # @param preferred [Array<Hash{Symbol=>String}>] A list of topologies that the volume should attempt to be
225
+ #
226
+ # @param requisite [Array<Hash{Symbol=>String}>] A list of required topologies, at least one of which the
227
+ end
228
+
229
+ # The availability of the volume for use in tasks.
230
+ #
231
+ # - `active` The volume is fully available for scheduling on the cluster
232
+ # - `pause` No new workloads should use the volume, but existing workloads are not
233
+ # stopped.
234
+ # - `drain` All workloads using this volume should be stopped and rescheduled, and
235
+ # no new ones should be started.
236
+ #
237
+ # @see DockerEngine::Models::CreateRequest::ClusterVolumeSpec::AccessMode#availability
238
+ module Availability
239
+ extend DockerEngine::Internal::Type::Enum
240
+
241
+ ACTIVE = :active
242
+ PAUSE = :pause
243
+ DRAIN = :drain
244
+
245
+ # @!method self.values
246
+ # @return [Array<Symbol>]
247
+ end
248
+
249
+ # @see DockerEngine::Models::CreateRequest::ClusterVolumeSpec::AccessMode#capacity_range
250
+ class CapacityRange < DockerEngine::Internal::Type::BaseModel
251
+ # @!attribute limit_bytes
252
+ # The volume must not be bigger than this. The value of 0 indicates an unspecified
253
+ # maximum.
254
+ #
255
+ # @return [Integer, nil]
256
+ optional :limit_bytes, Integer, api_name: :LimitBytes
257
+
258
+ # @!attribute required_bytes
259
+ # The volume must be at least this big. The value of 0 indicates an unspecified
260
+ # minimum
261
+ #
262
+ # @return [Integer, nil]
263
+ optional :required_bytes, Integer, api_name: :RequiredBytes
264
+
265
+ # @!method initialize(limit_bytes: nil, required_bytes: nil)
266
+ # Some parameter documentations has been truncated, see
267
+ # {DockerEngine::Models::CreateRequest::ClusterVolumeSpec::AccessMode::CapacityRange}
268
+ # for more details.
269
+ #
270
+ # The desired capacity that the volume should be created with. If empty, the
271
+ # plugin will decide the capacity.
272
+ #
273
+ # @param limit_bytes [Integer] The volume must not be bigger than this. The value of 0
274
+ #
275
+ # @param required_bytes [Integer] The volume must be at least this big. The value of 0
276
+ end
277
+
278
+ # The set of nodes this volume can be used on at one time.
279
+ #
280
+ # - `single` The volume may only be scheduled to one node at a time.
281
+ # - `multi` the volume may be scheduled to any supported number of nodes at a
282
+ # time.
283
+ #
284
+ # @see DockerEngine::Models::CreateRequest::ClusterVolumeSpec::AccessMode#scope
285
+ module Scope
286
+ extend DockerEngine::Internal::Type::Enum
287
+
288
+ SINGLE = :single
289
+ MULTI = :multi
290
+
291
+ # @!method self.values
292
+ # @return [Array<Symbol>]
293
+ end
294
+
295
+ class Secret < DockerEngine::Internal::Type::BaseModel
296
+ # @!attribute key
297
+ # Key is the name of the key of the key-value pair passed to the plugin.
298
+ #
299
+ # @return [String, nil]
300
+ optional :key, String, api_name: :Key
301
+
302
+ # @!attribute secret
303
+ # Secret is the swarm Secret object from which to read data. This can be a Secret
304
+ # name or ID. The Secret data is retrieved by swarm and used as the value of the
305
+ # key-value pair passed to the plugin.
306
+ #
307
+ # @return [String, nil]
308
+ optional :secret, String, api_name: :Secret
309
+
310
+ # @!method initialize(key: nil, secret: nil)
311
+ # Some parameter documentations has been truncated, see
312
+ # {DockerEngine::Models::CreateRequest::ClusterVolumeSpec::AccessMode::Secret} for
313
+ # more details.
314
+ #
315
+ # One cluster volume secret entry. Defines a key-value pair that is passed to the
316
+ # plugin.
317
+ #
318
+ # @param key [String] Key is the name of the key of the key-value pair passed to
319
+ #
320
+ # @param secret [String] Secret is the swarm Secret object from which to read data.
321
+ end
322
+
323
+ # The number and way that different tasks can use this volume at one time.
324
+ #
325
+ # - `none` The volume may only be used by one task at a time.
326
+ # - `readonly` The volume may be used by any number of tasks, but they all must
327
+ # mount the volume as readonly
328
+ # - `onewriter` The volume may be used by any number of tasks, but only one may
329
+ # mount it as read/write.
330
+ # - `all` The volume may have any number of readers and writers.
331
+ #
332
+ # @see DockerEngine::Models::CreateRequest::ClusterVolumeSpec::AccessMode#sharing
333
+ module Sharing
334
+ extend DockerEngine::Internal::Type::Enum
335
+
336
+ NONE = :none
337
+ READONLY = :readonly
338
+ ONEWRITER = :onewriter
339
+ ALL = :all
340
+
341
+ # @!method self.values
342
+ # @return [Array<Symbol>]
343
+ end
344
+ end
345
+ end
346
+ end
347
+ end
348
+ end
@@ -0,0 +1,27 @@
1
+ # frozen_string_literal: true
2
+
3
+ module DockerEngine
4
+ module Models
5
+ # @see DockerEngine::Resources::Containers#create
6
+ class CreateResponse < DockerEngine::Internal::Type::BaseModel
7
+ # @!attribute id
8
+ # The ID of the created container
9
+ #
10
+ # @return [String]
11
+ required :id, String, api_name: :Id
12
+
13
+ # @!attribute warnings
14
+ # Warnings encountered when creating the container
15
+ #
16
+ # @return [Array<String>]
17
+ required :warnings, DockerEngine::Internal::Type::ArrayOf[String], api_name: :Warnings
18
+
19
+ # @!method initialize(id:, warnings:)
20
+ # OK response to ContainerCreate operation
21
+ #
22
+ # @param id [String] The ID of the created container
23
+ #
24
+ # @param warnings [Array<String>] Warnings encountered when creating the container
25
+ end
26
+ end
27
+ end