Class: Chef::Knife::VaultDelete

Inherits:
Chef::Knife show all
Includes:
VaultBase
Defined in:
lib/chef/knife/vault_delete.rb

Direct Known Subclasses

EncryptDelete

Instance Method Summary collapse

Methods included from VaultBase

included, #show_usage

Instance Method Details

#runObject



25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
# File 'lib/chef/knife/vault_delete.rb', line 25

def run
  vault = @name_args[0]
  item = @name_args[1]

  set_mode(config[:vault_mode])

  if vault && item
    delete_object(ChefVault::Item, "#{vault}/#{item}", "chef_vault_item") do
      begin
        ChefVault::Item.load(vault, item).destroy
      rescue ChefVault::Exceptions::KeysNotFound,
             ChefVault::Exceptions::ItemNotFound
        raise ChefVault::Exceptions::ItemNotFound,
          "#{vault}/#{item} not found."
      end
    end
  else
    show_usage
  end
end