class Dumbwaiter::Cli
Public Instance Methods
custom_recipes(stack_name, layer_name, event_name)
click to toggle source
# File lib/dumbwaiter/cli.rb, line 58 def custom_recipes(stack_name, layer_name, event_name) stack = Stack.find(stack_name) layer = Layer.find(stack, layer_name) recipes = layer.custom_recipes.fetch(event_name.to_sym, []).join(" ") Kernel.puts(recipes) rescue Dumbwaiter::Stack::NotFound, Dumbwaiter::Layer::NotFound => e raise Thor::Error.new(e.message) end
deploy(stack_name, app_name, revision)
click to toggle source
# File lib/dumbwaiter/cli.rb, line 9 def deploy(stack_name, app_name, revision) stack = Stack.find(stack_name) app = App.find(stack, app_name) app.deploy(revision) rescue Dumbwaiter::Stack::NotFound, Dumbwaiter::App::NotFound => e raise Thor::Error.new(e.message) end
layers(stack_name)
click to toggle source
# File lib/dumbwaiter/cli.rb, line 82 def layers(stack_name) stack = Stack.find(stack_name) layer_names = stack.layers.map(&:shortname) Kernel.puts(layer_names.join(" ")) rescue Dumbwaiter::Stack::NotFound => e raise Thor::Error.new(e.message) end
list(stack_name)
click to toggle source
# File lib/dumbwaiter/cli.rb, line 18 def list(stack_name) stack = Stack.find(stack_name) deployments = stack.deployments.select do |deployment| %w(rollback deploy update_custom_cookbooks execute_recipes).include?(deployment.command_name) end deployments.each do |deployment| Kernel.puts(deployment.to_log) end rescue Dumbwaiter::Stack::NotFound => e raise Thor::Error.new(e.message) end
rechef(stack_name)
click to toggle source
# File lib/dumbwaiter/cli.rb, line 33 def rechef(stack_name) Stack.find(stack_name).rechef rescue Dumbwaiter::Stack::NotFound => e raise Thor::Error.new(e.message) end
rollback(stack_name, app_name)
click to toggle source
# File lib/dumbwaiter/cli.rb, line 40 def rollback(stack_name, app_name) stack = Stack.find(stack_name) app = App.find(stack, app_name) app.rollback rescue Dumbwaiter::Stack::NotFound, Dumbwaiter::App::NotFound => e raise Thor::Error.new(e.message) end
run_recipe(stack_name, layer_name, recipe)
click to toggle source
# File lib/dumbwaiter/cli.rb, line 49 def run_recipe(stack_name, layer_name, recipe) stack = Stack.find(stack_name) layer = Layer.find(stack, layer_name) layer.run_recipe(recipe) rescue Dumbwaiter::Stack::NotFound, Dumbwaiter::Layer::NotFound => e raise Thor::Error.new(e.message) end
stacks()
click to toggle source
# File lib/dumbwaiter/cli.rb, line 77 def stacks Stack.all.each { |stack| Kernel.puts("#{stack.name}: #{stack.apps.map(&:name).join(', ')}") } end
update_custom_recipes(stack_name, layer_name, event_name, *recipes)
click to toggle source
# File lib/dumbwaiter/cli.rb, line 68 def update_custom_recipes(stack_name, layer_name, event_name, *recipes) stack = Stack.find(stack_name) layer = Layer.find(stack, layer_name) layer.update_custom_recipes(event_name.to_sym, recipes) rescue Dumbwaiter::Stack::NotFound, Dumbwaiter::Layer::NotFound => e raise Thor::Error.new(e.message) end