Sha256: 20aedcc5cb109ba97f1c89f43fdee196b21166baf1ab410c1ddc69da5f219909

Contents?: true

Size: 906 Bytes

Versions: 13

Compression:

Stored size: 906 Bytes

Contents

module Kontena::Cli::Volumes
  class CreateCommand < Kontena::Command
    include Kontena::Cli::Common
    include Kontena::Cli::GridOptions


    banner "Creates a volume"
    parameter 'NAME', 'Volume name'

    option '--driver', 'DRIVER', 'Volume driver to be used'
    option '--driver-opt', 'DRIVER_OPT', 'Volume driver options', multivalued: true
    option '--scope', 'SCOPE', 'Volume scope'

    requires_current_master
    requires_current_master_token

    def execute
      volume = {
        name: name,
        scope: scope,
        driver: driver,
        driver_opts: parse_driver_opts
      }
      spinner "Creating volume #{pastel.cyan(name)} " do
        create_volume(volume)
      end
    end

    def parse_driver_opts
      Hash[driver_opt_list.map{|opt| opt.split '='}]
    end

    def create_volume(volume)
      client.post("volumes/#{current_grid}", volume)
    end
  end
end

Version data entries

13 entries across 13 versions & 1 rubygems

Version Path
kontena-cli-1.3.0.pre1 lib/kontena/cli/volumes/create_command.rb
kontena-cli-1.2.2 lib/kontena/cli/volumes/create_command.rb
kontena-cli-1.2.2.rc2 lib/kontena/cli/volumes/create_command.rb
kontena-cli-1.2.2.rc1 lib/kontena/cli/volumes/create_command.rb
kontena-cli-1.2.1 lib/kontena/cli/volumes/create_command.rb
kontena-cli-1.2.1.rc1 lib/kontena/cli/volumes/create_command.rb
kontena-cli-1.2.0 lib/kontena/cli/volumes/create_command.rb
kontena-cli-1.2.0.rc3 lib/kontena/cli/volumes/create_command.rb
kontena-cli-1.2.0.rc2 lib/kontena/cli/volumes/create_command.rb
kontena-cli-1.2.0.rc1 lib/kontena/cli/volumes/create_command.rb
kontena-cli-1.2.0.pre3 lib/kontena/cli/volumes/create_command.rb
kontena-cli-1.2.0.pre2 lib/kontena/cli/volumes/create_command.rb
kontena-cli-1.2.0.pre1 lib/kontena/cli/volumes/create_command.rb