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
76 changes: 76 additions & 0 deletions rbi/docker_engine_ruby/helpers/buildkit_status.rbi
Original file line number Diff line number Diff line change
@@ -0,0 +1,76 @@
# typed: strong

module DockerEngineRuby
module Helpers
module BuildkitStatus
TRACE_ID = T.let("moby.buildkit.trace", String)

class Vertex < Struct
extend T::Generic

Elem = type_member { { fixed: T.anything } }

sig { returns(T.nilable(String)) }
def digest; end

sig { returns(T.nilable(String)) }
def name; end

sig { returns(T::Boolean) }
def cached; end

sig { returns(T::Boolean) }
def started; end

sig { returns(T::Boolean) }
def completed; end

sig { returns(T.nilable(String)) }
def error; end
end

class Log < Struct
extend T::Generic

Elem = type_member { { fixed: T.anything } }

sig { returns(T.nilable(String)) }
def vertex; end

sig { returns(Integer) }
def stream; end

sig { returns(String) }
def msg; end
end

class Status < Struct
extend T::Generic

Elem = type_member { { fixed: T.anything } }

sig { returns(T::Array[DockerEngineRuby::Helpers::BuildkitStatus::Vertex]) }
def vertexes; end

sig { returns(T::Array[DockerEngineRuby::Helpers::BuildkitStatus::Log]) }
def logs; end
end

class << self
sig { params(info: DockerEngineRuby::Models::BuildInfo).returns(T::Boolean) }
def trace?(info); end

sig { params(aux: String).returns(DockerEngineRuby::Helpers::BuildkitStatus::Status) }
def decode(aux); end
end

class PlainPrinter
sig { params(out: T.proc.params(line: String).void).void }
def initialize(&out); end

sig { params(status: DockerEngineRuby::Helpers::BuildkitStatus::Status).void }
def print(status); end
end
end
end
end
37 changes: 37 additions & 0 deletions sig/docker_engine_ruby/helpers/buildkit_status.rbs
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
module DockerEngineRuby
module Helpers
module BuildkitStatus
TRACE_ID: String

class Vertex < Struct[untyped]
attr_accessor digest: String?
attr_accessor name: String?
attr_accessor cached: bool
attr_accessor started: bool
attr_accessor completed: bool
attr_accessor error: String?
end

class Log < Struct[untyped]
attr_accessor vertex: String?
attr_accessor stream: Integer
attr_accessor msg: String
end

class Status < Struct[untyped]
attr_accessor vertexes: ::Array[Vertex]
attr_accessor logs: ::Array[Log]
end

def self.trace?: (DockerEngineRuby::Models::BuildInfo info) -> bool

def self.decode: (String aux) -> Status

class PlainPrinter
def initialize: () { (String line) -> void } -> void

def print: (Status status) -> void
end
end
end
end
Loading