module EcsCmd::Exec
Public Class Methods
docker_ps_task(task_family, sudo = true)
click to toggle source
docker ps command to get container id
# File lib/ecs_cmd/exec.rb, line 38 def docker_ps_task(task_family, sudo = true) if sudo == true "sudo docker ps -n 1 -q --filter name=#{Shellwords.shellescape(task_family)}" else "docker ps -n 1 -q --filter name=#{Shellwords.shellescape(task_family)}" end end
execute(task_family, ip, command, user = 'root', sudo = true)
click to toggle source
# File lib/ecs_cmd/exec.rb, line 19 def execute(task_family, ip, command, user = 'root', sudo = true) cmd = if sudo == true "sudo docker exec -i -t -u #{user} `#{docker_ps_task(task_family)}` #{command}" else "docker exec -i -t -u #{user} `#{docker_ps_task(task_family)}` #{command}" end exec(ssh_cmd(ip) + " '#{cmd}' ") end
logs(task_family, ip, lines, sudo)
click to toggle source
# File lib/ecs_cmd/exec.rb, line 28 def logs(task_family, ip, lines, sudo) cmd = if sudo == true "sudo docker logs -f --tail=#{lines} `#{docker_ps_task(task_family)}`" else "docker logs -f --tail=#{lines} `#{docker_ps_task(task_family)}`" end exec(ssh_cmd(ip) + " '#{cmd}' ") end
ssh(ip)
click to toggle source
# File lib/ecs_cmd/exec.rb, line 15 def ssh(ip) exec(ssh_cmd(ip)) end
ssh_cmd(ip)
click to toggle source
move this to a config
# File lib/ecs_cmd/exec.rb, line 10 def ssh_cmd(ip) cmd = 'ssh -tt -o StrictHostKeyChecking=no ' cmd << ip.to_s end