Class: VagrantPlugins::Linode::Actions::ListKernels

Inherits:
Object
  • Object
show all
Defined in:
lib/vagrant-linode/actions/list_kernels.rb

Instance Method Summary collapse

Constructor Details

#initialize(app, _env) ⇒ ListKernels

Returns a new instance of ListKernels.



5
6
7
# File 'lib/vagrant-linode/actions/list_kernels.rb', line 5

def initialize(app, _env)
  @app = app
end

Instance Method Details

#call(env) ⇒ Object



9
10
11
12
13
14
15
16
# File 'lib/vagrant-linode/actions/list_kernels.rb', line 9

def call(env)
  linode_api = env[:linode_api]
  env[:ui].info ('%-4s %-6s %-6s %s' % ['ID', 'IsXen', 'IsKVM', 'Kernel Name'])
  linode_api.avail.kernels(isxen: nil, iskvm: 1).sort_by(&:kernelid).each do |kernel|
    env[:ui].info ('%-4s %-6s %-6s %s' % [kernel.kernelid, kernel.isxen, kernel.iskvm, kernel.label])
  end
  @app.call(env)
end