Sha256: 11a4332811a8f26fef752edd2ace79100f5a23fc91999d70879afc70cccf6c22

Contents?: true

Size: 1017 Bytes

Versions: 11

Compression:

Stored size: 1017 Bytes

Contents

require "uri"

module Brightbox
  desc I18n.t("servers.desc")
  command [:servers] do |cmd|

    cmd.desc I18n.t("servers.activate_console.desc")
    cmd.arg_name "server-id..."
    cmd.command [:activate_console] do |c|

      c.action do |global_options, _options, args|

        raise "You must specify servers to activate the console for" if args.empty?

        servers = Server.find_or_call(args) do |id|
          raise "Couldn't find server #{id}"
        end

        consoles = []

        servers.each do |s|
          info "Activating console for server #{s}"
          r = s.activate_console

          uri = URI(r["console_url"])
          uri.query = "password=#{r["console_token"]}"

          expires = Time.parse(r["console_token_expires"])
          consoles << { :url => uri.to_s, :token => r["console_token"], :expires => expires.localtime.to_s }
        end

        render_table(consoles, global_options.merge(:fields => [:url, :token, :expires], :resize => false))
      end
    end
  end
end

Version data entries

11 entries across 11 versions & 1 rubygems

Version Path
brightbox-cli-3.3.0 lib/brightbox-cli/commands/servers/activate-console.rb
brightbox-cli-3.2.0 lib/brightbox-cli/commands/servers/activate-console.rb
brightbox-cli-3.1.0 lib/brightbox-cli/commands/servers/activate-console.rb
brightbox-cli-3.0.1 lib/brightbox-cli/commands/servers/activate-console.rb
brightbox-cli-3.0.0 lib/brightbox-cli/commands/servers/activate-console.rb
brightbox-cli-2.12.0 lib/brightbox-cli/commands/servers/activate-console.rb
brightbox-cli-2.11.2 lib/brightbox-cli/commands/servers/activate-console.rb
brightbox-cli-2.11.1 lib/brightbox-cli/commands/servers/activate-console.rb
brightbox-cli-2.11.0 lib/brightbox-cli/commands/servers/activate-console.rb
brightbox-cli-2.10.0 lib/brightbox-cli/commands/servers/activate-console.rb
brightbox-cli-2.9.3 lib/brightbox-cli/commands/servers/activate-console.rb