class ForemanSalt::SaltModulesController
def action_permission
def action_permission case params[:action] when 'import' :import when 'apply_changes' :import else super end end
def apply_changes
def apply_changes if params[:changed].blank? info _('No changes found') else params[:changed].each do |environment, states| next unless states[:add] || states[:remove] add_to_environment(JSON.load(states[:add]), environment) if states[:add] remove_from_environment(JSON.load(states[:remove]), environment) if states[:remove] end clean_orphans success _('Successfully imported') end redirect_to salt_modules_path end
def create
def create logger.info("Params: #{params.inspect}") @salt_module = SaltModule.new(salt_module_params) if @salt_module.save process_success else process_error end end
def destroy
def destroy if @salt_module.destroy process_success else process_error end end
def edit
def edit @salt_environments = @salt_module.salt_environments end
def import
def import result = fetch_states_from_proxy(@proxy) @changes = result[:changes] @deletes = result[:deletes] if @changes.empty? info _('No changes found') redirect_to salt_modules_path end end
def index
def index @salt_modules = resource_base.search_for(params[:search], :order => params[:order]).includes(:salt_environments).paginate(:page => params[:page]) end
def new
def new @salt_module = SaltModule.new end
def update
def update if @salt_module.update_attributes(salt_module_params) success _('Successfully updated %s.' % @salt_module.to_s) redirect_to salt_modules_path else process_error end end