class Minke::Tasks::Shell
Public Instance Methods
create_list_of_links(compose_services)
click to toggle source
# File lib/minke/tasks/shell.rb, line 31 def create_list_of_links compose_services services = [] compose_services.each do |k,v| services.push(k) end services end
run(args = nil)
click to toggle source
# File lib/minke/tasks/shell.rb, line 5 def run args = nil @logger.info "## Run shell" @logger.info "## Run application with docker compose" compose_file = @config.compose_file_for(@task_name) compose_file = File.expand_path(compose_file) compose = @docker_compose_factory.create compose_file unless compose_file == nil run_with_block do |pre_tasks, post_tasks| begin services = create_list_of_links(compose.services) compose.up pre_tasks.call @logger.info "## Shell open to build container" run_command_in_container(['/bin/sh','-c','ls && /bin/sh'], true, services, @task_settings.ports) rescue SystemExit, Interrupt @logger.info "Stopping...." raise SystemExit ensure compose.down post_tasks.call end end end