class Pantry::Commands::UpdateApplication
Upload and save new configuration for an Application
See EditApplication
for more information
Public Class Methods
new(application_name = nil, config_body = nil)
click to toggle source
# File lib/pantry/commands/update_application.rb, line 9 def initialize(application_name = nil, config_body = nil) @application_name = application_name @config_body = config_body end
Public Instance Methods
perform(message)
click to toggle source
# File lib/pantry/commands/update_application.rb, line 21 def perform(message) application_name = message.body[0] config_body = message.body[1] app_config_file = Pantry.root.join("applications", application_name, "config.yml") FileUtils.mkdir_p(File.dirname(app_config_file)) begin Psych.parse(config_body, "config.yml") rescue => ex # Invalid YAML, don't save! return [false, ex.message] end File.open(app_config_file, "w+") do |file| file.write(config_body) end true end
to_message()
click to toggle source
Calls superclass method
Pantry::Command#to_message
# File lib/pantry/commands/update_application.rb, line 14 def to_message super.tap do |msg| msg << @application_name msg << @config_body end end