2014-03-23
【Chef】ローカルのクックブックを削除する
※ 環境
MacOS 10.7.5
Chef 11.10.4
結論:-zオプションをつけてknife cookbook delete
を実行すれば削除できる
おもむろに$ knife cookbook create <cookbook-name>
と打ってクックブックを作ったんだけど、cookbook-nameを間違えて作成してしまった。
削除したかったので、それらしきknife cookbook delete
コマンドを実行する。
$ knife cookbook delete <cookbook-name>
ERROR: Your private key could not be loaded from /etc/chef/client.pem
Check your configuration file and ensure that your private key is readable
するとなぜか失敗。 秘密鍵とか関係ないでしょうと思って色々調べてみたところ、上のコマンドだとリモートの操作をしようとしているらしきことがわかった。
ググってもそれらしいものが見つからなかったので、ヘルプを探索する。
$ knife -h
Usage: knife sub-command (options)
-s, --server-url URL Chef Server URL
--chef-zero-port PORT Port to start chef-zero on
-k, --key KEY API Client Key
--[no-]color Use colored output, defaults to false on Windows, true otherwise
-c, --config CONFIG The configuration file to use
--defaults Accept default values for all questions
-d, --disable-editing Do not open EDITOR, just accept the data as is
-e, --editor EDITOR Set the editor to use for interactive commands
-E, --environment ENVIRONMENT Set the Chef environment
-F, --format FORMAT Which format to use for output
-z, --local-mode Point knife commands at local repository instead of server
-u, --user USER API Client Username
--print-after Show the data after a destructive operation
-V, --verbose More verbose output. Use twice for max verbosity
-v, --version Show chef version
-y, --yes Say yes to all prompts for confirmation
-h, --help Show this message
すると最初の方に、ローカルの操作をするためと思われる-zオプションを発見。
knife cookbook delete
コマンドに-zオプションをつけて実行する。
$ knife cookbook delete <cookbook-name> -z
Do you really want to delete <cookbook-name> version 0.1.0? (Y/N) Y
Deleted cookbook[<cookbook-name> version 0.1.0]
無事消えました。
<< 前の記事新卒で入社してからの1年間を振り返ってみる
次の記事 >>RSpec + Guardで自動テスト実行環境を作る