lib/takeltau/ship/project/start.rb in takeltau-0.44.19 vs lib/takeltau/ship/project/start.rb in takeltau-0.44.23

- old
+ new

@@ -9,19 +9,20 @@ takelship = _ship_info_lib_get_takelshipinfo project = _ship_info_lib_get_project project, takelship return false unless _ship_project_start_valid_project? takelship, project ports = _ship_ports_lib_get_ports(takelship, project) - return false unless _ship_project_start_sailing? project, ports + return false if _ship_project_start_already_sailing? project, ports log.debug 'Writing port configuration to takelage.yml' _ship_ports_lib_write_ports(ports, project) log.debug "Starting takelship project \"#{project}\"" _ship_container_lib_docker_privileged ports, project - say "Started project \"#{project}\" on takelship \"#{_ship_container_lib_ship_hostname}\".\n\n" + _ship_project_start_print_banner project _ship_project_start_print_ports ports + true end private # check if we are inside a takelage container @@ -31,27 +32,37 @@ say 'Cannot start a takelship from within a takelage container!' false end # check if the takelship is already existng - def _ship_project_start_sailing?(project, ports) - return true unless ship_container_check_existing + def _ship_project_start_already_sailing?(project, ports) + return false unless ship_container_check_existing - say "The takelship \"#{_ship_container_lib_ship_hostname}\" is sailing with project \"#{project}\".\n\n" - say _ship_project_start_print_ports ports - false + _ship_project_start_print_banner project + _ship_project_start_print_ports ports + true end # check if the project is a valid takelship project def _ship_project_start_valid_project?(takelship, project) return true if _ship_info_lib_valid_project? takelship, project say 'No valid project found!' - say 'Hint: ship project list' + say 'Try: ship project list' false end + # print banner with status information + def _ship_project_start_print_banner(project) + ship_hostname = _ship_container_lib_ship_hostname + ship_dir = _docker_container_lib_homify_dir config.active['project_root_dir'] + say "The takelship #{ship_hostname}" + say "departed from #{ship_dir}" + say "ships project #{project}" + say + end + # print ports after starting a takelship def _ship_project_start_print_ports(ports) output = [] max_length = _ship_project_start_get_maxlength ports ports.each_value do |port| @@ -61,10 +72,10 @@ service = "[#{port['service']} #{port['protocol']}]" description = port['description'] description = " (#{description})" if port.key? 'description' output << "#{url.ljust(max_length['url'])} #{service.ljust(max_length['service'])}#{description}" end - output.join("\n") + say output.join("\n") end # get max length of left column def _ship_project_start_get_maxlength(ports) max_length = {}