Class: Central::Cli::Services::LinkCommand
- Inherits:
-
Clamp::Command
- Object
- Clamp::Command
- Central::Cli::Services::LinkCommand
- Includes:
- Common, ServicesHelper, Central::Cli::StackOptions
- Defined in:
- lib/central/cli/services/link_command.rb
Instance Method Summary collapse
Methods included from ServicesHelper
#create_service, #delete_service, #deploy_service, #get_service, #int_to_filesize, #parse_image, #parse_links, #parse_log_opts, #parse_memory, #parse_ports, #parse_relative_time, #parse_secrets, #parse_service_id, #restart_service, #scale_service, #show_service, #start_service, #stop_service, #update_service, #wait_for_deploy_to_finish
Methods included from Common
#access_token=, #add_master, #api_url, #api_url=, #clear_current_stack, #client, #current_master, #current_master=, #current_master_index, #current_stack, #current_stack=, #ensure_custom_ssl_ca, #require_api_url, #require_current_stack, #require_token, #reset_client, #save_settings, #settings, #settings_filename
Methods included from Central::Cli::StackOptions
Instance Method Details
#execute ⇒ Object
13 14 15 16 17 18 19 20 21 22 23 24 |
# File 'lib/central/cli/services/link_command.rb', line 13 def execute require_api_url token = require_token service = client(token).get("services/#{parse_service_id(name)}") existing_targets = service['links'].map { |l| l['stack_service_id'].split('/')[1] } abort("Service is already linked to #{target}") if existing_targets.include?(target.to_s) links = service['links'].map { |l| { name: l['stack_service_id'].split('/')[1], alias: l['alias'] } } links << { name: target.to_s, alias: target.to_s } data = { links: links } update_service(token, name, data) end |