Sha256: 0ccf43bc83a1a0bf2d26f7adc46c9560aea52c92e49458bc9682b0a38bd93e08

Contents?: true

Size: 1.64 KB

Versions: 13

Compression:

Stored size: 1.64 KB

Contents

require 'optparse'

module VagrantPlugins
  module CloudCommand
    module Command
      class List < Vagrant.plugin("2", :command)
        def execute
          options = {}

          opts = OptionParser.new do |o|
            o.banner = "Usage: vagrant cloud list [options] organization"
            o.separator ""
            o.separator "Search for boxes managed by a specific user/organization"
            o.separator ""
            o.separator "Options:"
            o.separator ""

            o.on("-j", "--json", "Formats results in JSON") do |j|
              options[:check] = j
            end
            o.on("-l", "--limit", Integer, "Max number of search results (default is 25)") do |l|
              options[:check] = l
            end
            o.on("-p", "--provider", "Comma separated list of providers to filter search. Defaults to all.") do |p|
              options[:check] = p
            end
            o.on("-s", "--sort-by", "Column to sort list (created, downloads, updated)") do |s|
              options[:check] = s
            end
            o.on("-u", "--username USERNAME_OR_EMAIL", String, "Vagrant Cloud username or email address") do |t|
              options[:username] = u
            end
          end

          # Parse the options
          argv = parse_options(opts)
          return if !argv
          if argv.length > 1
            raise Vagrant::Errors::CLIInvalidUsage,
              help: opts.help.chomp
          end

          @client = VagrantPlugins::CloudCommand::Util.client_login(@env, options[:username])

          # TODO: This endpoint is not implemented yet

          0
        end
      end
    end
  end
end

Version data entries

13 entries across 13 versions & 2 rubygems

Version Path
vagrant-aws-mkubenka-0.7.2.pre.24 vendor/bundle/ruby/2.7.0/bundler/gems/vagrant-22795b161bf6/plugins/commands/cloud/list.rb
vagrant-unbundled-2.2.10.0 plugins/commands/cloud/list.rb
vagrant-unbundled-2.2.9.0 plugins/commands/cloud/list.rb
vagrant-unbundled-2.2.8.0 plugins/commands/cloud/list.rb
vagrant-unbundled-2.2.7.0 plugins/commands/cloud/list.rb
vagrant-unbundled-2.2.6.2 plugins/commands/cloud/list.rb
vagrant-unbundled-2.2.6.1 plugins/commands/cloud/list.rb
vagrant-unbundled-2.2.6.0 plugins/commands/cloud/list.rb
vagrant-unbundled-2.2.5.0 plugins/commands/cloud/list.rb
vagrant-unbundled-2.2.4.0 plugins/commands/cloud/list.rb
vagrant-unbundled-2.2.3.0 plugins/commands/cloud/list.rb
vagrant-unbundled-2.2.2.0 plugins/commands/cloud/list.rb
vagrant-unbundled-2.2.0.0 plugins/commands/cloud/list.rb