docker-engine-ruby 0.3.0 → 0.5.0

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 (98) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +16 -0
  3. data/README.md +4 -2
  4. data/lib/docker_engine_ruby/client.rb +17 -1
  5. data/lib/docker_engine_ruby/models/config_list_response.rb +1 -1
  6. data/lib/docker_engine_ruby/models/config_object.rb +77 -0
  7. data/lib/docker_engine_ruby/models/config_spec.rb +68 -0
  8. data/lib/docker_engine_ruby/models/image_list_response.rb +1 -1
  9. data/lib/docker_engine_ruby/models/image_summary.rb +638 -0
  10. data/lib/docker_engine_ruby/models/info.rb +3 -3
  11. data/lib/docker_engine_ruby/models/network_create_response.rb +27 -0
  12. data/lib/docker_engine_ruby/models/network_list_response.rb +1 -1
  13. data/lib/docker_engine_ruby/models/network_summary.rb +260 -0
  14. data/lib/docker_engine_ruby/models/node.rb +3 -3
  15. data/lib/docker_engine_ruby/models/node_spec.rb +67 -0
  16. data/lib/docker_engine_ruby/models/secret.rb +3 -3
  17. data/lib/docker_engine_ruby/models/secret_spec.rb +99 -0
  18. data/lib/docker_engine_ruby/models/service.rb +3 -3
  19. data/lib/docker_engine_ruby/models/service_create_response.rb +32 -0
  20. data/lib/docker_engine_ruby/models/{spec.rb → service_spec.rb} +73 -67
  21. data/lib/docker_engine_ruby/models/service_update_response.rb +17 -0
  22. data/lib/docker_engine_ruby/models/swarm.rb +3 -3
  23. data/lib/docker_engine_ruby/models/swarm_init_params.rb +3 -3
  24. data/lib/docker_engine_ruby/models/swarm_spec.rb +270 -0
  25. data/lib/docker_engine_ruby/models/task.rb +3 -3
  26. data/lib/docker_engine_ruby/models/task_spec.rb +1439 -0
  27. data/lib/docker_engine_ruby/models.rb +23 -1
  28. data/lib/docker_engine_ruby/resources/configs.rb +6 -6
  29. data/lib/docker_engine_ruby/resources/images.rb +2 -2
  30. data/lib/docker_engine_ruby/resources/networks.rb +4 -4
  31. data/lib/docker_engine_ruby/resources/nodes.rb +1 -1
  32. data/lib/docker_engine_ruby/resources/secrets.rb +2 -2
  33. data/lib/docker_engine_ruby/resources/services.rb +6 -6
  34. data/lib/docker_engine_ruby/resources/swarm.rb +2 -2
  35. data/lib/docker_engine_ruby/version.rb +1 -1
  36. data/lib/docker_engine_ruby.rb +16 -5
  37. data/rbi/docker_engine_ruby/client.rbi +17 -0
  38. data/rbi/docker_engine_ruby/models/config_list_response.rbi +3 -1
  39. data/rbi/docker_engine_ruby/models/config_object.rbi +130 -0
  40. data/rbi/docker_engine_ruby/models/config_spec.rbi +127 -0
  41. data/rbi/docker_engine_ruby/models/image_list_response.rbi +3 -1
  42. data/rbi/docker_engine_ruby/models/image_summary.rbi +1073 -0
  43. data/rbi/docker_engine_ruby/models/info.rbi +4 -4
  44. data/rbi/docker_engine_ruby/models/network_create_response.rbi +37 -0
  45. data/rbi/docker_engine_ruby/models/network_list_response.rbi +3 -1
  46. data/rbi/docker_engine_ruby/models/network_summary.rbi +444 -0
  47. data/rbi/docker_engine_ruby/models/node.rbi +4 -4
  48. data/rbi/docker_engine_ruby/models/node_spec.rbi +126 -0
  49. data/rbi/docker_engine_ruby/models/secret.rbi +4 -4
  50. data/rbi/docker_engine_ruby/models/secret_spec.rbi +181 -0
  51. data/rbi/docker_engine_ruby/models/service.rbi +4 -4
  52. data/rbi/docker_engine_ruby/models/service_create_response.rbi +50 -0
  53. data/rbi/docker_engine_ruby/models/{spec.rbi → service_spec.rbi} +148 -104
  54. data/rbi/docker_engine_ruby/models/service_update_response.rbi +33 -0
  55. data/rbi/docker_engine_ruby/models/swarm.rbi +4 -4
  56. data/rbi/docker_engine_ruby/models/swarm_init_params.rbi +4 -4
  57. data/rbi/docker_engine_ruby/models/swarm_spec.rbi +568 -0
  58. data/rbi/docker_engine_ruby/models/task.rbi +4 -4
  59. data/rbi/docker_engine_ruby/models/task_spec.rbi +3011 -0
  60. data/rbi/docker_engine_ruby/models.rbi +23 -1
  61. data/rbi/docker_engine_ruby/resources/configs.rbi +4 -4
  62. data/rbi/docker_engine_ruby/resources/images.rbi +1 -1
  63. data/rbi/docker_engine_ruby/resources/networks.rbi +2 -2
  64. data/rbi/docker_engine_ruby/resources/nodes.rbi +1 -1
  65. data/rbi/docker_engine_ruby/resources/secrets.rbi +2 -2
  66. data/rbi/docker_engine_ruby/resources/services.rbi +4 -4
  67. data/rbi/docker_engine_ruby/resources/swarm.rbi +2 -2
  68. data/sig/docker_engine_ruby/client.rbs +6 -0
  69. data/sig/docker_engine_ruby/models/config_list_response.rbs +1 -1
  70. data/sig/docker_engine_ruby/models/config_object.rbs +64 -0
  71. data/sig/docker_engine_ruby/models/config_spec.rbs +59 -0
  72. data/sig/docker_engine_ruby/models/image_list_response.rbs +1 -1
  73. data/sig/docker_engine_ruby/models/image_summary.rbs +457 -0
  74. data/sig/docker_engine_ruby/models/info.rbs +7 -5
  75. data/sig/docker_engine_ruby/models/network_create_response.rbs +15 -0
  76. data/sig/docker_engine_ruby/models/network_list_response.rbs +1 -1
  77. data/sig/docker_engine_ruby/models/network_summary.rbs +238 -0
  78. data/sig/docker_engine_ruby/models/node.rbs +5 -5
  79. data/sig/docker_engine_ruby/models/node_spec.rbs +70 -0
  80. data/sig/docker_engine_ruby/models/secret.rbs +5 -5
  81. data/sig/docker_engine_ruby/models/secret_spec.rbs +82 -0
  82. data/sig/docker_engine_ruby/models/service.rbs +7 -5
  83. data/sig/docker_engine_ruby/models/service_create_response.rbs +17 -0
  84. data/sig/docker_engine_ruby/models/{spec.rbs → service_spec.rbs} +107 -103
  85. data/sig/docker_engine_ruby/models/service_update_response.rbs +15 -0
  86. data/sig/docker_engine_ruby/models/swarm.rbs +5 -5
  87. data/sig/docker_engine_ruby/models/swarm_init_params.rbs +5 -5
  88. data/sig/docker_engine_ruby/models/swarm_spec.rbs +293 -0
  89. data/sig/docker_engine_ruby/models/task.rbs +5 -5
  90. data/sig/docker_engine_ruby/models/task_spec.rbs +1480 -0
  91. data/sig/docker_engine_ruby/models.rbs +23 -1
  92. data/sig/docker_engine_ruby/resources/configs.rbs +3 -3
  93. data/sig/docker_engine_ruby/resources/networks.rbs +1 -1
  94. data/sig/docker_engine_ruby/resources/nodes.rbs +1 -1
  95. data/sig/docker_engine_ruby/resources/secrets.rbs +2 -2
  96. data/sig/docker_engine_ruby/resources/services.rbs +4 -4
  97. data/sig/docker_engine_ruby/resources/swarm.rbs +2 -2
  98. metadata +37 -4
@@ -3,6 +3,6 @@
3
3
  module DockerEngineRuby
4
4
  module Models
5
5
  # @type [DockerEngineRuby::Internal::Type::Converter]
6
- NetworkListResponse = DockerEngineRuby::Internal::Type::ArrayOf[-> { DockerEngineRuby::Summary }]
6
+ NetworkListResponse = DockerEngineRuby::Internal::Type::ArrayOf[-> { DockerEngineRuby::NetworkSummary }]
7
7
  end
8
8
  end
@@ -0,0 +1,260 @@
1
+ # frozen_string_literal: true
2
+
3
+ module DockerEngineRuby
4
+ module Models
5
+ class NetworkSummary < DockerEngineRuby::Internal::Type::BaseModel
6
+ # @!attribute attachable
7
+ # Whether a global / swarm scope network is manually attachable by regular
8
+ # containers from workers in swarm mode.
9
+ #
10
+ # @return [Boolean, nil]
11
+ optional :attachable, DockerEngineRuby::Internal::Type::Boolean, api_name: :Attachable
12
+
13
+ # @!attribute config_from
14
+ # The config-only network source to provide the configuration for this network.
15
+ #
16
+ # @return [DockerEngineRuby::Models::NetworkSummary::ConfigFrom, nil]
17
+ optional :config_from, -> { DockerEngineRuby::NetworkSummary::ConfigFrom }, api_name: :ConfigFrom
18
+
19
+ # @!attribute config_only
20
+ # Whether the network is a config-only network. Config-only networks are
21
+ # placeholder networks for network configurations to be used by other networks.
22
+ # Config-only networks cannot be used directly to run containers or services.
23
+ #
24
+ # @return [Boolean, nil]
25
+ optional :config_only, DockerEngineRuby::Internal::Type::Boolean, api_name: :ConfigOnly
26
+
27
+ # @!attribute created
28
+ # Date and time at which the network was created in
29
+ # [RFC 3339](https://www.ietf.org/rfc/rfc3339.txt) format with nano-seconds.
30
+ #
31
+ # @return [Time, nil]
32
+ optional :created, Time, api_name: :Created
33
+
34
+ # @!attribute driver
35
+ # The name of the driver used to create the network (e.g. `bridge`, `overlay`).
36
+ #
37
+ # @return [String, nil]
38
+ optional :driver, String, api_name: :Driver
39
+
40
+ # @!attribute enable_i_pv4
41
+ # Whether the network was created with IPv4 enabled.
42
+ #
43
+ # @return [Boolean, nil]
44
+ optional :enable_i_pv4, DockerEngineRuby::Internal::Type::Boolean, api_name: :EnableIPv4
45
+
46
+ # @!attribute enable_i_pv6
47
+ # Whether the network was created with IPv6 enabled.
48
+ #
49
+ # @return [Boolean, nil]
50
+ optional :enable_i_pv6, DockerEngineRuby::Internal::Type::Boolean, api_name: :EnableIPv6
51
+
52
+ # @!attribute id
53
+ # ID that uniquely identifies a network on a single machine.
54
+ #
55
+ # @return [String, nil]
56
+ optional :id, String, api_name: :Id
57
+
58
+ # @!attribute ingress
59
+ # Whether the network is providing the routing-mesh for the swarm cluster.
60
+ #
61
+ # @return [Boolean, nil]
62
+ optional :ingress, DockerEngineRuby::Internal::Type::Boolean, api_name: :Ingress
63
+
64
+ # @!attribute internal
65
+ # Whether the network is created to only allow internal networking connectivity.
66
+ #
67
+ # @return [Boolean, nil]
68
+ optional :internal, DockerEngineRuby::Internal::Type::Boolean, api_name: :Internal
69
+
70
+ # @!attribute ipam
71
+ # The network's IP Address Management.
72
+ #
73
+ # @return [DockerEngineRuby::Models::NetworkSummary::Ipam, nil]
74
+ optional :ipam, -> { DockerEngineRuby::NetworkSummary::Ipam }, api_name: :IPAM
75
+
76
+ # @!attribute labels
77
+ # Metadata specific to the network being created.
78
+ #
79
+ # @return [Hash{Symbol=>String}, nil]
80
+ optional :labels, DockerEngineRuby::Internal::Type::HashOf[String], api_name: :Labels
81
+
82
+ # @!attribute name
83
+ # Name of the network.
84
+ #
85
+ # @return [String, nil]
86
+ optional :name, String, api_name: :Name
87
+
88
+ # @!attribute options
89
+ # Network-specific options uses when creating the network.
90
+ #
91
+ # @return [Hash{Symbol=>String}, nil]
92
+ optional :options, DockerEngineRuby::Internal::Type::HashOf[String], api_name: :Options
93
+
94
+ # @!attribute peers
95
+ # List of peer nodes for an overlay network. This field is only present for
96
+ # overlay networks, and omitted for other network types.
97
+ #
98
+ # @return [Array<DockerEngineRuby::Models::NetworkSummary::Peer>, nil]
99
+ optional :peers,
100
+ -> { DockerEngineRuby::Internal::Type::ArrayOf[DockerEngineRuby::NetworkSummary::Peer] },
101
+ api_name: :Peers
102
+
103
+ # @!attribute scope
104
+ # The level at which the network exists (e.g. `swarm` for cluster-wide or `local`
105
+ # for machine level)
106
+ #
107
+ # @return [String, nil]
108
+ optional :scope, String, api_name: :Scope
109
+
110
+ # @!method initialize(attachable: nil, config_from: nil, config_only: nil, created: nil, driver: nil, enable_i_pv4: nil, enable_i_pv6: nil, id: nil, ingress: nil, internal: nil, ipam: nil, labels: nil, name: nil, options: nil, peers: nil, scope: nil)
111
+ # Some parameter documentations has been truncated, see
112
+ # {DockerEngineRuby::Models::NetworkSummary} for more details.
113
+ #
114
+ # Network list response item
115
+ #
116
+ # @param attachable [Boolean] Whether a global / swarm scope network is manually attachable by regular
117
+ #
118
+ # @param config_from [DockerEngineRuby::Models::NetworkSummary::ConfigFrom] The config-only network source to provide the configuration for
119
+ #
120
+ # @param config_only [Boolean] Whether the network is a config-only network. Config-only networks are
121
+ #
122
+ # @param created [Time] Date and time at which the network was created in
123
+ #
124
+ # @param driver [String] The name of the driver used to create the network (e.g. `bridge`,
125
+ #
126
+ # @param enable_i_pv4 [Boolean] Whether the network was created with IPv4 enabled.
127
+ #
128
+ # @param enable_i_pv6 [Boolean] Whether the network was created with IPv6 enabled.
129
+ #
130
+ # @param id [String] ID that uniquely identifies a network on a single machine.
131
+ #
132
+ # @param ingress [Boolean] Whether the network is providing the routing-mesh for the swarm cluster.
133
+ #
134
+ # @param internal [Boolean] Whether the network is created to only allow internal networking
135
+ #
136
+ # @param ipam [DockerEngineRuby::Models::NetworkSummary::Ipam] The network's IP Address Management.
137
+ #
138
+ # @param labels [Hash{Symbol=>String}] Metadata specific to the network being created.
139
+ #
140
+ # @param name [String] Name of the network.
141
+ #
142
+ # @param options [Hash{Symbol=>String}] Network-specific options uses when creating the network.
143
+ #
144
+ # @param peers [Array<DockerEngineRuby::Models::NetworkSummary::Peer>] List of peer nodes for an overlay network. This field is only present
145
+ #
146
+ # @param scope [String] The level at which the network exists (e.g. `swarm` for cluster-wide
147
+
148
+ # @see DockerEngineRuby::Models::NetworkSummary#config_from
149
+ class ConfigFrom < DockerEngineRuby::Internal::Type::BaseModel
150
+ # @!attribute network
151
+ # The name of the config-only network that provides the network's configuration.
152
+ # The specified network must be an existing config-only network. Only network
153
+ # names are allowed, not network IDs.
154
+ #
155
+ # @return [String, nil]
156
+ optional :network, String, api_name: :Network
157
+
158
+ # @!method initialize(network: nil)
159
+ # Some parameter documentations has been truncated, see
160
+ # {DockerEngineRuby::Models::NetworkSummary::ConfigFrom} for more details.
161
+ #
162
+ # The config-only network source to provide the configuration for this network.
163
+ #
164
+ # @param network [String] The name of the config-only network that provides the network's
165
+ end
166
+
167
+ # @see DockerEngineRuby::Models::NetworkSummary#ipam
168
+ class Ipam < DockerEngineRuby::Internal::Type::BaseModel
169
+ # @!attribute config
170
+ # List of IPAM configuration options, specified as a map:
171
+ #
172
+ # ```
173
+ # {"Subnet": <CIDR>, "IPRange": <CIDR>, "Gateway": <IP address>, "AuxAddress": <device_name:IP address>}
174
+ # ```
175
+ #
176
+ # @return [Array<DockerEngineRuby::Models::NetworkSummary::Ipam::Config>, nil]
177
+ optional :config,
178
+ -> {
179
+ DockerEngineRuby::Internal::Type::ArrayOf[DockerEngineRuby::NetworkSummary::Ipam::Config]
180
+ },
181
+ api_name: :Config
182
+
183
+ # @!attribute driver
184
+ # Name of the IPAM driver to use.
185
+ #
186
+ # @return [String, nil]
187
+ optional :driver, String, api_name: :Driver
188
+
189
+ # @!attribute options
190
+ # Driver-specific options, specified as a map.
191
+ #
192
+ # @return [Hash{Symbol=>String}, nil]
193
+ optional :options, DockerEngineRuby::Internal::Type::HashOf[String], api_name: :Options
194
+
195
+ # @!method initialize(config: nil, driver: nil, options: nil)
196
+ # Some parameter documentations has been truncated, see
197
+ # {DockerEngineRuby::Models::NetworkSummary::Ipam} for more details.
198
+ #
199
+ # The network's IP Address Management.
200
+ #
201
+ # @param config [Array<DockerEngineRuby::Models::NetworkSummary::Ipam::Config>] List of IPAM configuration options, specified as a map:
202
+ #
203
+ # @param driver [String] Name of the IPAM driver to use.
204
+ #
205
+ # @param options [Hash{Symbol=>String}] Driver-specific options, specified as a map.
206
+
207
+ class Config < DockerEngineRuby::Internal::Type::BaseModel
208
+ # @!attribute auxiliary_addresses
209
+ #
210
+ # @return [Hash{Symbol=>String}, nil]
211
+ optional :auxiliary_addresses,
212
+ DockerEngineRuby::Internal::Type::HashOf[String],
213
+ api_name: :AuxiliaryAddresses
214
+
215
+ # @!attribute gateway
216
+ #
217
+ # @return [String, nil]
218
+ optional :gateway, String, api_name: :Gateway
219
+
220
+ # @!attribute ip_range
221
+ #
222
+ # @return [String, nil]
223
+ optional :ip_range, String, api_name: :IPRange
224
+
225
+ # @!attribute subnet
226
+ #
227
+ # @return [String, nil]
228
+ optional :subnet, String, api_name: :Subnet
229
+
230
+ # @!method initialize(auxiliary_addresses: nil, gateway: nil, ip_range: nil, subnet: nil)
231
+ # @param auxiliary_addresses [Hash{Symbol=>String}]
232
+ # @param gateway [String]
233
+ # @param ip_range [String]
234
+ # @param subnet [String]
235
+ end
236
+ end
237
+
238
+ class Peer < DockerEngineRuby::Internal::Type::BaseModel
239
+ # @!attribute ip
240
+ # IP-address of the peer-node in the Swarm cluster.
241
+ #
242
+ # @return [String, nil]
243
+ optional :ip, String, api_name: :IP
244
+
245
+ # @!attribute name
246
+ # ID of the peer-node in the Swarm cluster.
247
+ #
248
+ # @return [String, nil]
249
+ optional :name, String, api_name: :Name
250
+
251
+ # @!method initialize(ip: nil, name: nil)
252
+ # represents one peer of an overlay network.
253
+ #
254
+ # @param ip [String] IP-address of the peer-node in the Swarm cluster.
255
+ #
256
+ # @param name [String] ID of the peer-node in the Swarm cluster.
257
+ end
258
+ end
259
+ end
260
+ end
@@ -34,8 +34,8 @@ module DockerEngineRuby
34
34
 
35
35
  # @!attribute spec
36
36
  #
37
- # @return [DockerEngineRuby::Models::Spec, nil]
38
- optional :spec, -> { DockerEngineRuby::Spec }, api_name: :Spec
37
+ # @return [DockerEngineRuby::Models::NodeSpec, nil]
38
+ optional :spec, -> { DockerEngineRuby::NodeSpec }, api_name: :Spec
39
39
 
40
40
  # @!attribute status
41
41
  # NodeStatus represents the status of a node.
@@ -78,7 +78,7 @@ module DockerEngineRuby
78
78
  #
79
79
  # @param manager_status [DockerEngineRuby::Models::Node::ManagerStatus] ManagerStatus represents the status of a manager.
80
80
  #
81
- # @param spec [DockerEngineRuby::Models::Spec]
81
+ # @param spec [DockerEngineRuby::Models::NodeSpec]
82
82
  #
83
83
  # @param status [DockerEngineRuby::Models::Node::Status] NodeStatus represents the status of a node.
84
84
  #
@@ -0,0 +1,67 @@
1
+ # frozen_string_literal: true
2
+
3
+ module DockerEngineRuby
4
+ module Models
5
+ class NodeSpec < DockerEngineRuby::Internal::Type::BaseModel
6
+ # @!attribute availability
7
+ # Availability of the node.
8
+ #
9
+ # @return [Symbol, DockerEngineRuby::Models::NodeSpec::Availability, nil]
10
+ optional :availability, enum: -> { DockerEngineRuby::NodeSpec::Availability }, api_name: :Availability
11
+
12
+ # @!attribute labels
13
+ # User-defined key/value metadata.
14
+ #
15
+ # @return [Hash{Symbol=>String}, nil]
16
+ optional :labels, DockerEngineRuby::Internal::Type::HashOf[String], api_name: :Labels
17
+
18
+ # @!attribute name
19
+ # Name for the node.
20
+ #
21
+ # @return [String, nil]
22
+ optional :name, String, api_name: :Name
23
+
24
+ # @!attribute role
25
+ # Role of the node.
26
+ #
27
+ # @return [Symbol, DockerEngineRuby::Models::NodeSpec::Role, nil]
28
+ optional :role, enum: -> { DockerEngineRuby::NodeSpec::Role }, api_name: :Role
29
+
30
+ # @!method initialize(availability: nil, labels: nil, name: nil, role: nil)
31
+ # @param availability [Symbol, DockerEngineRuby::Models::NodeSpec::Availability] Availability of the node.
32
+ #
33
+ # @param labels [Hash{Symbol=>String}] User-defined key/value metadata.
34
+ #
35
+ # @param name [String] Name for the node.
36
+ #
37
+ # @param role [Symbol, DockerEngineRuby::Models::NodeSpec::Role] Role of the node.
38
+
39
+ # Availability of the node.
40
+ #
41
+ # @see DockerEngineRuby::Models::NodeSpec#availability
42
+ module Availability
43
+ extend DockerEngineRuby::Internal::Type::Enum
44
+
45
+ ACTIVE = :active
46
+ PAUSE = :pause
47
+ DRAIN = :drain
48
+
49
+ # @!method self.values
50
+ # @return [Array<Symbol>]
51
+ end
52
+
53
+ # Role of the node.
54
+ #
55
+ # @see DockerEngineRuby::Models::NodeSpec#role
56
+ module Role
57
+ extend DockerEngineRuby::Internal::Type::Enum
58
+
59
+ WORKER = :worker
60
+ MANAGER = :manager
61
+
62
+ # @!method self.values
63
+ # @return [Array<Symbol>]
64
+ end
65
+ end
66
+ end
67
+ end
@@ -16,8 +16,8 @@ module DockerEngineRuby
16
16
 
17
17
  # @!attribute spec
18
18
  #
19
- # @return [DockerEngineRuby::Models::Spec, nil]
20
- optional :spec, -> { DockerEngineRuby::Spec }, api_name: :Spec
19
+ # @return [DockerEngineRuby::Models::SecretSpec, nil]
20
+ optional :spec, -> { DockerEngineRuby::SecretSpec }, api_name: :Spec
21
21
 
22
22
  # @!attribute updated_at
23
23
  #
@@ -46,7 +46,7 @@ module DockerEngineRuby
46
46
  #
47
47
  # @param id [String]
48
48
  #
49
- # @param spec [DockerEngineRuby::Models::Spec]
49
+ # @param spec [DockerEngineRuby::Models::SecretSpec]
50
50
  #
51
51
  # @param updated_at [Time]
52
52
  #
@@ -0,0 +1,99 @@
1
+ # frozen_string_literal: true
2
+
3
+ module DockerEngineRuby
4
+ module Models
5
+ class SecretSpec < DockerEngineRuby::Internal::Type::BaseModel
6
+ # @!attribute data
7
+ # Data is the data to store as a secret, formatted as a standard base64-encoded
8
+ # ([RFC 4648](https://tools.ietf.org/html/rfc4648#section-4)) string. It must be
9
+ # empty if the Driver field is set, in which case the data is loaded from an
10
+ # external secret store. The maximum allowed size is 500KB, as defined in
11
+ # [MaxSecretSize](https://pkg.go.dev/github.com/moby/swarmkit/v2
12
+ #
13
+ # @return [String, nil]
14
+ optional :data, String, api_name: :Data
15
+
16
+ # @!attribute driver
17
+ # Driver represents a driver (network, logging, secrets).
18
+ #
19
+ # @return [DockerEngineRuby::Models::SecretSpec::Driver, nil]
20
+ optional :driver, -> { DockerEngineRuby::SecretSpec::Driver }, api_name: :Driver
21
+
22
+ # @!attribute labels
23
+ # User-defined key/value metadata.
24
+ #
25
+ # @return [Hash{Symbol=>String}, nil]
26
+ optional :labels, DockerEngineRuby::Internal::Type::HashOf[String], api_name: :Labels
27
+
28
+ # @!attribute name
29
+ # User-defined name of the secret.
30
+ #
31
+ # @return [String, nil]
32
+ optional :name, String, api_name: :Name
33
+
34
+ # @!attribute templating
35
+ # Driver represents a driver (network, logging, secrets).
36
+ #
37
+ # @return [DockerEngineRuby::Models::SecretSpec::Templating, nil]
38
+ optional :templating, -> { DockerEngineRuby::SecretSpec::Templating }, api_name: :Templating
39
+
40
+ # @!method initialize(data: nil, driver: nil, labels: nil, name: nil, templating: nil)
41
+ # Some parameter documentations has been truncated, see
42
+ # {DockerEngineRuby::Models::SecretSpec} for more details.
43
+ #
44
+ # @param data [String] Data is the data to store as a secret, formatted as a standard base64-encoded
45
+ #
46
+ # @param driver [DockerEngineRuby::Models::SecretSpec::Driver] Driver represents a driver (network, logging, secrets).
47
+ #
48
+ # @param labels [Hash{Symbol=>String}] User-defined key/value metadata.
49
+ #
50
+ # @param name [String] User-defined name of the secret.
51
+ #
52
+ # @param templating [DockerEngineRuby::Models::SecretSpec::Templating] Driver represents a driver (network, logging, secrets).
53
+
54
+ # @see DockerEngineRuby::Models::SecretSpec#driver
55
+ class Driver < DockerEngineRuby::Internal::Type::BaseModel
56
+ # @!attribute name
57
+ # Name of the driver.
58
+ #
59
+ # @return [String]
60
+ required :name, String, api_name: :Name
61
+
62
+ # @!attribute options
63
+ # Key/value map of driver-specific options.
64
+ #
65
+ # @return [Hash{Symbol=>String}, nil]
66
+ optional :options, DockerEngineRuby::Internal::Type::HashOf[String], api_name: :Options
67
+
68
+ # @!method initialize(name:, options: nil)
69
+ # Driver represents a driver (network, logging, secrets).
70
+ #
71
+ # @param name [String] Name of the driver.
72
+ #
73
+ # @param options [Hash{Symbol=>String}] Key/value map of driver-specific options.
74
+ end
75
+
76
+ # @see DockerEngineRuby::Models::SecretSpec#templating
77
+ class Templating < DockerEngineRuby::Internal::Type::BaseModel
78
+ # @!attribute name
79
+ # Name of the driver.
80
+ #
81
+ # @return [String]
82
+ required :name, String, api_name: :Name
83
+
84
+ # @!attribute options
85
+ # Key/value map of driver-specific options.
86
+ #
87
+ # @return [Hash{Symbol=>String}, nil]
88
+ optional :options, DockerEngineRuby::Internal::Type::HashOf[String], api_name: :Options
89
+
90
+ # @!method initialize(name:, options: nil)
91
+ # Driver represents a driver (network, logging, secrets).
92
+ #
93
+ # @param name [String] Name of the driver.
94
+ #
95
+ # @param options [Hash{Symbol=>String}] Key/value map of driver-specific options.
96
+ end
97
+ end
98
+ end
99
+ end
@@ -38,8 +38,8 @@ module DockerEngineRuby
38
38
  # @!attribute spec
39
39
  # User modifiable configuration for a service.
40
40
  #
41
- # @return [DockerEngineRuby::Models::Spec, nil]
42
- optional :spec, -> { DockerEngineRuby::Spec }, api_name: :Spec
41
+ # @return [DockerEngineRuby::Models::ServiceSpec, nil]
42
+ optional :spec, -> { DockerEngineRuby::ServiceSpec }, api_name: :Spec
43
43
 
44
44
  # @!attribute updated_at
45
45
  #
@@ -80,7 +80,7 @@ module DockerEngineRuby
80
80
  #
81
81
  # @param service_status [DockerEngineRuby::Models::Service::ServiceStatus] The status of the service's tasks. Provided only when requested as
82
82
  #
83
- # @param spec [DockerEngineRuby::Models::Spec] User modifiable configuration for a service.
83
+ # @param spec [DockerEngineRuby::Models::ServiceSpec] User modifiable configuration for a service.
84
84
  #
85
85
  # @param updated_at [Time]
86
86
  #
@@ -0,0 +1,32 @@
1
+ # frozen_string_literal: true
2
+
3
+ module DockerEngineRuby
4
+ module Models
5
+ # @see DockerEngineRuby::Resources::Services#create
6
+ class ServiceCreateResponse < DockerEngineRuby::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, DockerEngineRuby::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
+ # {DockerEngineRuby::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