Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 7 additions & 1 deletion lib/docker_engine_ruby/models/config_create_params.rb
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,13 @@ class ConfigCreateParams < DockerEngineRuby::Internal::Type::BaseModel
extend DockerEngineRuby::Internal::Type::RequestParameters::Converter
include DockerEngineRuby::Internal::Type::RequestParameters

# @!method initialize(request_options: {})
# @!attribute spec
#
# @return [DockerEngineRuby::Models::ConfigSpec]
required :spec, -> { DockerEngineRuby::ConfigSpec }

# @!method initialize(spec:, request_options: {})
# @param spec [DockerEngineRuby::Models::ConfigSpec]
# @param request_options [DockerEngineRuby::RequestOptions, Hash{Symbol=>Object}]
end
end
Expand Down
8 changes: 7 additions & 1 deletion lib/docker_engine_ruby/models/config_update_params.rb
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,11 @@ class ConfigUpdateParams < DockerEngineRuby::Internal::Type::BaseModel
extend DockerEngineRuby::Internal::Type::RequestParameters::Converter
include DockerEngineRuby::Internal::Type::RequestParameters

# @!attribute spec
#
# @return [DockerEngineRuby::Models::ConfigSpec]
required :spec, -> { DockerEngineRuby::ConfigSpec }

# @!attribute id
#
# @return [String]
Expand All @@ -17,7 +22,8 @@ class ConfigUpdateParams < DockerEngineRuby::Internal::Type::BaseModel
# @return [Integer]
required :version, Integer

# @!method initialize(id:, version:, request_options: {})
# @!method initialize(spec:, id:, version:, request_options: {})
# @param spec [DockerEngineRuby::Models::ConfigSpec]
# @param id [String]
# @param version [Integer]
# @param request_options [DockerEngineRuby::RequestOptions, Hash{Symbol=>Object}]
Expand Down
15 changes: 14 additions & 1 deletion lib/docker_engine_ruby/models/container_create_params.rb
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,17 @@ class ContainerCreateParams < DockerEngineRuby::Internal::Type::BaseModel
extend DockerEngineRuby::Internal::Type::RequestParameters::Converter
include DockerEngineRuby::Internal::Type::RequestParameters

# @!attribute config
#
# @return [DockerEngineRuby::Models::Config]
required :config, -> { DockerEngineRuby::Config }

# @!attribute host_config
# Контейнерные настройки хоста: монтирования, сеть, лимиты.
#
# @return [DockerEngineRuby::Models::Container::HostConfig, nil]
optional :host_config, -> { DockerEngineRuby::Container::HostConfig }

# @!attribute name
#
# @return [String, nil]
Expand All @@ -17,7 +28,9 @@ class ContainerCreateParams < DockerEngineRuby::Internal::Type::BaseModel
# @return [String, nil]
optional :platform, String

# @!method initialize(name: nil, platform: nil, request_options: {})
# @!method initialize(config:, host_config: nil, name: nil, platform: nil, request_options: {})
# @param config [DockerEngineRuby::Models::Config]
# @param host_config [DockerEngineRuby::Models::Container::HostConfig]
# @param name [String]
# @param platform [String]
# @param request_options [DockerEngineRuby::RequestOptions, Hash{Symbol=>Object}]
Expand Down
8 changes: 7 additions & 1 deletion lib/docker_engine_ruby/models/node_update_params.rb
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,11 @@ class NodeUpdateParams < DockerEngineRuby::Internal::Type::BaseModel
extend DockerEngineRuby::Internal::Type::RequestParameters::Converter
include DockerEngineRuby::Internal::Type::RequestParameters

# @!attribute spec
#
# @return [DockerEngineRuby::Models::NodeSpec]
required :spec, -> { DockerEngineRuby::NodeSpec }

# @!attribute id
#
# @return [String]
Expand All @@ -17,7 +22,8 @@ class NodeUpdateParams < DockerEngineRuby::Internal::Type::BaseModel
# @return [Integer]
required :version, Integer

# @!method initialize(id:, version:, request_options: {})
# @!method initialize(spec:, id:, version:, request_options: {})
# @param spec [DockerEngineRuby::Models::NodeSpec]
# @param id [String]
# @param version [Integer]
# @param request_options [DockerEngineRuby::RequestOptions, Hash{Symbol=>Object}]
Expand Down
8 changes: 7 additions & 1 deletion lib/docker_engine_ruby/models/secret_create_params.rb
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,13 @@ class SecretCreateParams < DockerEngineRuby::Internal::Type::BaseModel
extend DockerEngineRuby::Internal::Type::RequestParameters::Converter
include DockerEngineRuby::Internal::Type::RequestParameters

# @!method initialize(request_options: {})
# @!attribute spec
#
# @return [DockerEngineRuby::Models::SecretSpec]
required :spec, -> { DockerEngineRuby::SecretSpec }

# @!method initialize(spec:, request_options: {})
# @param spec [DockerEngineRuby::Models::SecretSpec]
# @param request_options [DockerEngineRuby::RequestOptions, Hash{Symbol=>Object}]
end
end
Expand Down
8 changes: 7 additions & 1 deletion lib/docker_engine_ruby/models/secret_update_params.rb
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,11 @@ class SecretUpdateParams < DockerEngineRuby::Internal::Type::BaseModel
extend DockerEngineRuby::Internal::Type::RequestParameters::Converter
include DockerEngineRuby::Internal::Type::RequestParameters

# @!attribute spec
#
# @return [DockerEngineRuby::Models::SecretSpec]
required :spec, -> { DockerEngineRuby::SecretSpec }

# @!attribute id
#
# @return [String]
Expand All @@ -17,7 +22,8 @@ class SecretUpdateParams < DockerEngineRuby::Internal::Type::BaseModel
# @return [Integer]
required :version, Integer

# @!method initialize(id:, version:, request_options: {})
# @!method initialize(spec:, id:, version:, request_options: {})
# @param spec [DockerEngineRuby::Models::SecretSpec]
# @param id [String]
# @param version [Integer]
# @param request_options [DockerEngineRuby::RequestOptions, Hash{Symbol=>Object}]
Expand Down
8 changes: 7 additions & 1 deletion lib/docker_engine_ruby/models/service_create_params.rb
Original file line number Diff line number Diff line change
Expand Up @@ -7,12 +7,18 @@ class ServiceCreateParams < DockerEngineRuby::Internal::Type::BaseModel
extend DockerEngineRuby::Internal::Type::RequestParameters::Converter
include DockerEngineRuby::Internal::Type::RequestParameters

# @!attribute spec
#
# @return [DockerEngineRuby::Models::ServiceSpec]
required :spec, -> { DockerEngineRuby::ServiceSpec }

# @!attribute x_registry_auth
#
# @return [String, nil]
optional :x_registry_auth, String

# @!method initialize(x_registry_auth: nil, request_options: {})
# @!method initialize(spec:, x_registry_auth: nil, request_options: {})
# @param spec [DockerEngineRuby::Models::ServiceSpec]
# @param x_registry_auth [String]
# @param request_options [DockerEngineRuby::RequestOptions, Hash{Symbol=>Object}]
end
Expand Down
8 changes: 7 additions & 1 deletion lib/docker_engine_ruby/models/service_update_params.rb
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,11 @@ class ServiceUpdateParams < DockerEngineRuby::Internal::Type::BaseModel
extend DockerEngineRuby::Internal::Type::RequestParameters::Converter
include DockerEngineRuby::Internal::Type::RequestParameters

# @!attribute spec
#
# @return [DockerEngineRuby::Models::ServiceSpec]
required :spec, -> { DockerEngineRuby::ServiceSpec }

# @!attribute id
#
# @return [String]
Expand All @@ -32,7 +37,8 @@ class ServiceUpdateParams < DockerEngineRuby::Internal::Type::BaseModel
# @return [String, nil]
optional :x_registry_auth, String

# @!method initialize(id:, version:, registry_auth_from: nil, rollback: nil, x_registry_auth: nil, request_options: {})
# @!method initialize(spec:, id:, version:, registry_auth_from: nil, rollback: nil, x_registry_auth: nil, request_options: {})
# @param spec [DockerEngineRuby::Models::ServiceSpec]
# @param id [String]
# @param version [Integer]
# @param registry_auth_from [Symbol, DockerEngineRuby::Models::ServiceUpdateParams::RegistryAuthFrom]
Expand Down
8 changes: 7 additions & 1 deletion lib/docker_engine_ruby/models/swarm_update_params.rb
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,11 @@ class SwarmUpdateParams < DockerEngineRuby::Internal::Type::BaseModel
extend DockerEngineRuby::Internal::Type::RequestParameters::Converter
include DockerEngineRuby::Internal::Type::RequestParameters

# @!attribute spec
#
# @return [DockerEngineRuby::Models::SwarmSpec]
required :spec, -> { DockerEngineRuby::SwarmSpec }

# @!attribute version
#
# @return [Integer]
Expand All @@ -27,7 +32,8 @@ class SwarmUpdateParams < DockerEngineRuby::Internal::Type::BaseModel
# @return [Boolean, nil]
optional :rotate_worker_token, DockerEngineRuby::Internal::Type::Boolean

# @!method initialize(version:, rotate_manager_token: nil, rotate_manager_unlock_key: nil, rotate_worker_token: nil, request_options: {})
# @!method initialize(spec:, version:, rotate_manager_token: nil, rotate_manager_unlock_key: nil, rotate_worker_token: nil, request_options: {})
# @param spec [DockerEngineRuby::Models::SwarmSpec]
# @param version [Integer]
# @param rotate_manager_token [Boolean]
# @param rotate_manager_unlock_key [Boolean]
Expand Down
8 changes: 7 additions & 1 deletion lib/docker_engine_ruby/models/volume_create_params.rb
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,13 @@ class VolumeCreateParams < DockerEngineRuby::Internal::Type::BaseModel
extend DockerEngineRuby::Internal::Type::RequestParameters::Converter
include DockerEngineRuby::Internal::Type::RequestParameters

# @!method initialize(request_options: {})
# @!attribute create_request
#
# @return [DockerEngineRuby::Models::CreateRequest]
required :create_request, -> { DockerEngineRuby::CreateRequest }

# @!method initialize(create_request:, request_options: {})
# @param create_request [DockerEngineRuby::Models::CreateRequest]
# @param request_options [DockerEngineRuby::RequestOptions, Hash{Symbol=>Object}]
end
end
Expand Down
11 changes: 8 additions & 3 deletions lib/docker_engine_ruby/resources/containers.rb
Original file line number Diff line number Diff line change
Expand Up @@ -5,10 +5,12 @@ module Resources
class Containers
# Create a container
#
# @overload create(config:, name: nil, platform: nil, request_options: {})
# @overload create(config:, host_config: nil, name: nil, platform: nil, request_options: {})
#
# @param config [DockerEngineRuby::Models::Config] Body param: Configuration for a container that is portable between hosts.
#
# @param host_config [DockerEngineRuby::Models::Container::HostConfig] Body param: Настройки хоста: монтирования, сеть, лимиты.
#
# @param name [String] Query param
#
# @param platform [String] Query param
Expand All @@ -20,12 +22,15 @@ class Containers
# @see DockerEngineRuby::Models::ContainerCreateParams
def create(params)
parsed, options = DockerEngineRuby::ContainerCreateParams.dump_request(params)
query = DockerEngineRuby::Internal::Util.encode_query_params(parsed.except(:config))
query = DockerEngineRuby::Internal::Util.encode_query_params(parsed.except(:config, :host_config))
# Docker ждёт настройки хоста в том же теле, что и конфиг контейнера: `{..., "HostConfig": {...}}`.
host_config = parsed[:host_config]
body = host_config.nil? ? parsed[:config] : {**parsed[:config], HostConfig: host_config}
@client.request(
method: :post,
path: "containers/create",
query: query,
body: parsed[:config],
body: body,
model: DockerEngineRuby::CreateResponse,
options: options
)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -33,9 +33,7 @@ module DockerEngineRuby
tls_key: T.nilable(OpenSSL::PKey::PKey),
tls_verify_peer: T::Boolean,
url: URI::Generic
).returns(
Net::HTTP
)
).returns(Net::HTTP)
end
def connect(cert_store:, tls_cert:, tls_key:, tls_verify_peer:, url:)
end
Expand Down
9 changes: 8 additions & 1 deletion rbi/docker_engine_ruby/models/config_create_params.rbi
Original file line number Diff line number Diff line change
Expand Up @@ -14,12 +14,19 @@ module DockerEngineRuby
)
end

sig { returns(DockerEngineRuby::ConfigSpec) }
attr_reader :spec

sig { params(spec: DockerEngineRuby::ConfigSpec::OrHash).void }
attr_writer :spec

sig do
params(
spec: DockerEngineRuby::ConfigSpec::OrHash,
request_options: DockerEngineRuby::RequestOptions::OrHash
).returns(T.attached_class)
end
def self.new(request_options: {})
def self.new(spec:, request_options: {})
end

sig do
Expand Down
10 changes: 9 additions & 1 deletion rbi/docker_engine_ruby/models/config_update_params.rbi
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,12 @@ module DockerEngineRuby
)
end

sig { returns(DockerEngineRuby::ConfigSpec) }
attr_reader :spec

sig { params(spec: DockerEngineRuby::ConfigSpec::OrHash).void }
attr_writer :spec

sig { returns(String) }
attr_accessor :id

Expand All @@ -22,17 +28,19 @@ module DockerEngineRuby

sig do
params(
spec: DockerEngineRuby::ConfigSpec::OrHash,
id: String,
version: Integer,
request_options: DockerEngineRuby::RequestOptions::OrHash
).returns(T.attached_class)
end
def self.new(id:, version:, request_options: {})
def self.new(spec:, id:, version:, request_options: {})
end

sig do
override.returns(
{
spec: DockerEngineRuby::ConfigSpec,
id: String,
version: Integer,
request_options: DockerEngineRuby::RequestOptions
Expand Down
28 changes: 27 additions & 1 deletion rbi/docker_engine_ruby/models/container_create_params.rbi
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,22 @@ module DockerEngineRuby
)
end

sig { returns(DockerEngineRuby::Config) }
attr_reader :config

sig { params(config: DockerEngineRuby::Config::OrHash).void }
attr_writer :config

sig { returns(T.nilable(DockerEngineRuby::Container::HostConfig)) }
attr_reader :host_config

sig do
params(
host_config: DockerEngineRuby::Container::HostConfig::OrHash
).void
end
attr_writer :host_config

sig { returns(T.nilable(String)) }
attr_reader :name

Expand All @@ -28,17 +44,27 @@ module DockerEngineRuby

sig do
params(
config: DockerEngineRuby::Config::OrHash,
host_config: DockerEngineRuby::Container::HostConfig::OrHash,
name: String,
platform: String,
request_options: DockerEngineRuby::RequestOptions::OrHash
).returns(T.attached_class)
end
def self.new(name: nil, platform: nil, request_options: {})
def self.new(
config:,
host_config: nil,
name: nil,
platform: nil,
request_options: {}
)
end

sig do
override.returns(
{
config: DockerEngineRuby::Config,
host_config: DockerEngineRuby::Container::HostConfig,
name: String,
platform: String,
request_options: DockerEngineRuby::RequestOptions
Expand Down
10 changes: 9 additions & 1 deletion rbi/docker_engine_ruby/models/node_update_params.rbi
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,12 @@ module DockerEngineRuby
)
end

sig { returns(DockerEngineRuby::NodeSpec) }
attr_reader :spec

sig { params(spec: DockerEngineRuby::NodeSpec::OrHash).void }
attr_writer :spec

sig { returns(String) }
attr_accessor :id

Expand All @@ -22,17 +28,19 @@ module DockerEngineRuby

sig do
params(
spec: DockerEngineRuby::NodeSpec::OrHash,
id: String,
version: Integer,
request_options: DockerEngineRuby::RequestOptions::OrHash
).returns(T.attached_class)
end
def self.new(id:, version:, request_options: {})
def self.new(spec:, id:, version:, request_options: {})
end

sig do
override.returns(
{
spec: DockerEngineRuby::NodeSpec,
id: String,
version: Integer,
request_options: DockerEngineRuby::RequestOptions
Expand Down
Loading
Loading