1
バグが破壊された後にカスタムルビコードを実行したいと思います。バグが破壊されてルビーが破壊される
コードです:
class OnDestroyMiddleware
def initialize(app, env)
@app = app
end
def call(env)
env["config"].vm.provisioners.each do |provisioner|
env.ui.info "Attempting to remove client #{provisioner.config.node_name}"
`knife client show #{provisioner.config.node_name}`
if $?.to_i == 0
env.ui.info "Removing client #{provisioner.config.node_name}"
`knife client delete #{provisioner.config.node_name} -y`
end
env.ui.info "Attempting to remove node #{provisioner.config.node_name}"
`knife node show #{provisioner.config.node_name}`
if $?.to_i == 0
env.ui.info "Removing node #{provisioner.config.node_name}"
`knife node delete #{provisioner.config.node_name} -y`
end
end
@app.call(env)
end
end
私はこれをしようとしているが、動作していない:
Vagrant::Action[:destroy].use(OnDestroyMiddleware)
このコードのすべてがhttps://gist.github.com/skippy/1010660
からである私は、このエラーを持っていますヴァリアント::アクション[:破棄]
Message: NoMethodError: undefined method `[]' for Vagrant::Action:Module
のように、私は次のエラー持って、あなたのVagrantfileに直接コードを追加しますプラグイン
をインストールする必要がまず:*不明な構成セクション「トリガーを' – Lechucico
プラグインをインストールしましたか? –
私はそれを忘れました。問題は今、関数を呼び出す方法です:OnDestroyMiddleware.new.call ?? 2つのパラメータはどうですか? – Lechucico