class Gitlab::QA::Docker::Command
def self.execute(cmd, mask_secrets: nil, &block)
def self.execute(cmd, mask_secrets: nil, &block) new(cmd, mask_secrets: mask_secrets).execute!(&block) end
def <<(*args)
def <<(*args) tap { @args.concat(args) } end
def ==(other)
def ==(other) to_s == other.to_s end
def env(name, value)
def env(name, value) tap { @args.push(%(--env #{name}="#{value}")) } end
def execute!(&block)
def execute!(&block) Docker::Shellout.new(self).execute!(&block) end
def initialize(cmd = nil, mask_secrets: nil)
def initialize(cmd = nil, mask_secrets: nil) @args = Array(cmd) @mask_secrets = Array(mask_secrets) end
def mask_secrets
-
(String)
- The masked command string
def mask_secrets @mask_secrets.each_with_object(to_s) { |secret, s| s.gsub!(secret, '*****') } end
def name(identity)
def name(identity) tap { @args.push("--name #{identity}") } end
def to_s
def to_s "docker #{@args.join(' ')}" end
def volume(from, to, opt = :z)
def volume(from, to, opt = :z) tap { @args.push("--volume #{from}:#{to}:#{opt}") } end