class DockerCompose::Interactive::Instance
Public Class Methods
new(file='', project=nil)
click to toggle source
# File lib/capistrano/dockercompose/interactive/instance.rb, line 7 def initialize(file='', project=nil) @file = file @project = project end
Public Instance Methods
build(args='')
click to toggle source
# File lib/capistrano/dockercompose/interactive/instance.rb, line 80 def build(args='') execute_compose_command("build #{args}") end
config()
click to toggle source
# File lib/capistrano/dockercompose/interactive/instance.rb, line 12 def config return @config if @config raw_config = execute_compose_command('config', true) @config = YAML.load(raw_config) end
count_container()
click to toggle source
# File lib/capistrano/dockercompose/interactive/instance.rb, line 44 def count_container count = execute_compose_command('ps -q | wc -l', capture = true) count.to_i rescue 0 end
down(args='')
click to toggle source
# File lib/capistrano/dockercompose/interactive/instance.rb, line 64 def down(args='') execute_compose_command("down #{args}") end
execute(cmd, capture = false)
click to toggle source
# File lib/capistrano/dockercompose/interactive/instance.rb, line 18 def execute(cmd, capture = false) execute_compose_command(cmd, capture) end
execute_compose_command(cmd, capture = false)
click to toggle source
# File lib/capistrano/dockercompose/interactive/instance.rb, line 22 def execute_compose_command(cmd, capture = false) project = @project.empty? ? "" : "-p #{@project}" file = @file.empty? ? "" : "--file #{@file}" cmd = "#{file} #{project} #{cmd}" if capture return DockerCompose::Interactive.capture_local_or_remote cmd else DockerCompose::Interactive.execute_local_or_remote_interactive cmd end end
isup?()
click to toggle source
# File lib/capistrano/dockercompose/interactive/instance.rb, line 38 def isup? count_container > 0 rescue false end
pull(args='')
click to toggle source
# File lib/capistrano/dockercompose/interactive/instance.rb, line 84 def pull(args='') execute_compose_command("pull #{args}") end
restart(args='')
click to toggle source
# File lib/capistrano/dockercompose/interactive/instance.rb, line 76 def restart(args='') execute_compose_command("restart #{args}") end
service(name)
click to toggle source
# File lib/capistrano/dockercompose/interactive/instance.rb, line 34 def service(name) Service.new(self, name, config()['services'][name]) end
start(args='')
click to toggle source
# File lib/capistrano/dockercompose/interactive/instance.rb, line 72 def start(args='') execute_compose_command("start #{args}") end
start_or_restart()
click to toggle source
starts or restarts a docker compose
# File lib/capistrano/dockercompose/interactive/instance.rb, line 52 def start_or_restart if isup? restart() else up() end end
stop(args='')
click to toggle source
# File lib/capistrano/dockercompose/interactive/instance.rb, line 60 def stop(args='') execute_compose_command("stop #{args}") end
up(args='-d')
click to toggle source
# File lib/capistrano/dockercompose/interactive/instance.rb, line 68 def up(args='-d') execute_compose_command("up #{args}") end