class Devbin::Commands::Rails::Attach

Public Class Methods

new(app_name, options) click to toggle source
# File lib/devbin/commands/rails/attach.rb, line 9
def initialize(app_name, options)
  @app_name = app_name
  @options = options
end

Public Instance Methods

execute(input: $stdin, output: $stdout) click to toggle source
# File lib/devbin/commands/rails/attach.rb, line 14
def execute(input: $stdin, output: $stdout)
  container_id, _err = run "docker-compose ps -q #{@app_name}", chdir: docker_pwd
  puts pastel.green(
    "Remember to use ",
    pastel.yellow.on_bright_black.bold("Ctrl + C"),
    " to detach from container ( Overrided Ctrl + P Ctrl + Q to work with VSCode )"
  )
  pid = Process.fork {
    exec "docker attach #{container_id.strip} --detach-keys='ctrl-c'"
  }
  Process.wait pid
  output.puts "OK"
  exit 0
end