module Occi::Cli::Helpers::TriggerHelper
Public Instance Methods
helper_trigger(options, output = nil)
click to toggle source
# File lib/occi/cli/helpers/trigger_helper.rb, line 3 def helper_trigger(options, output = nil) unless resource_types.include?(options.resource) || resource_type_identifiers.include?(options.resource) || options.resource.start_with?(options.endpoint) || options.resource.start_with?('/') Occi::Cli::Log.error "I have no idea what #{options.resource.inspect} is ..." raise "Unknown resource #{options.resource.inspect}, there is nothing to trigger here!" end action_instance = Occi::Core::ActionInstance.new action_instance.action = helper_trigger_normalize_action(options.trigger_action) action_instance.attributes = options.attributes if trigger(options.resource, action_instance) Occi::Cli::Log.info "Action #{options.trigger_action.type_identifier.inspect} " "triggered on #{options.resource.inspect}!" else message = "Failed to trigger an action on #{options.resource.inspect}!" Occi::Cli::Log.error message raise message end true end
helper_trigger_normalize_action(action)
click to toggle source
# File lib/occi/cli/helpers/trigger_helper.rb, line 27 def helper_trigger_normalize_action(action) return action if action_type_identifiers.include?(action.type_identifier) ti = action_type_identifier(action.term) if ti.blank? message = "Failed to identify action #{action.type_identifier.inspect} in the model!" Occi::Cli::Log.error message raise message end splt = ti.split '#' action.term = splt.last action.scheme = "#{splt.first}#" action end