Sha256: 8839c3aa9d96663f07d0ce17dac3a4986906e0296f0787bb74badf11abef8bf6

Contents?: true

Size: 1022 Bytes

Versions: 16

Compression:

Stored size: 1022 Bytes

Contents

require 'open3'

module Kontena::Cli::Plugins
  class InstallCommand < Kontena::Command
    include Kontena::Util
    include Kontena::Cli::Common

    parameter 'NAME', 'Plugin name'

    option ['-v', '--version'], 'VERSION', 'Specify version of plugin to install'
    option '--pre', :flag, 'Allow pre-release of a plugin to be installed', default: false

    def execute
      install_plugin(name)
    end

    def install_plugin(name)
      plugin = "kontena-plugin-#{name}"
      gem_bin = which('gem')
      install_options = ['--no-ri', '--no-doc']
      install_options << "--version #{version}" if version
      install_options << "--pre" if pre?
      install_command = "#{gem_bin} install #{install_options.join(' ')} #{plugin}"
      success = false
      spinner "installing plugin #{name.colorize(:cyan)}" do
        stdout, stderr, status = Open3.capture3(install_command)
        unless stderr.empty?
          raise stderr
        end
      end
    rescue => exc
      puts exc.message
    end
  end
end

Version data entries

16 entries across 16 versions & 1 rubygems

Version Path
kontena-cli-0.16.3 lib/kontena/cli/plugins/install_command.rb
kontena-cli-0.16.3.rc1 lib/kontena/cli/plugins/install_command.rb
kontena-cli-0.16.2 lib/kontena/cli/plugins/install_command.rb
kontena-cli-0.16.2.rc1 lib/kontena/cli/plugins/install_command.rb
kontena-cli-0.16.1 lib/kontena/cli/plugins/install_command.rb
kontena-cli-0.16.1.rc3 lib/kontena/cli/plugins/install_command.rb
kontena-cli-0.16.1.rc2 lib/kontena/cli/plugins/install_command.rb
kontena-cli-0.16.1.rc1 lib/kontena/cli/plugins/install_command.rb
kontena-cli-0.16.0 lib/kontena/cli/plugins/install_command.rb
kontena-cli-0.16.0.rc3 lib/kontena/cli/plugins/install_command.rb
kontena-cli-0.16.0.rc2 lib/kontena/cli/plugins/install_command.rb
kontena-cli-0.16.0.rc1 lib/kontena/cli/plugins/install_command.rb
kontena-cli-0.16.0.pre9 lib/kontena/cli/plugins/install_command.rb
kontena-cli-0.16.0.pre8 lib/kontena/cli/plugins/install_command.rb
kontena-cli-0.16.0.pre7 lib/kontena/cli/plugins/install_command.rb
kontena-cli-0.16.0.pre6 lib/kontena/cli/plugins/install_command.rb