Class: ForemanPuppet::Api::V2::PuppetclassesController

Inherits:
BaseController
  • Object
show all
Includes:
Parameters::Puppetclass
Defined in:
app/controllers/foreman_puppet/api/v2/puppetclasses_controller.rb

Instance Method Summary collapse

Methods included from Parameters::Puppetclass

#puppetclass_params

Methods included from Parameters::PuppetclassLookupKey

#puppetclass_lookup_key_params

Instance Method Details

#createObject



66
67
68
69
# File 'app/controllers/foreman_puppet/api/v2/puppetclasses_controller.rb', line 66

def create
  @puppetclass = Puppetclass.new(puppetclass_params)
  process_response @puppetclass.save
end

#destroyObject



83
84
85
# File 'app/controllers/foreman_puppet/api/v2/puppetclasses_controller.rb', line 83

def destroy
  process_response @puppetclass.destroy
end

#indexObject



20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
# File 'app/controllers/foreman_puppet/api/v2/puppetclasses_controller.rb', line 20

def index
  values   = Puppetclass.authorized(:view_puppetclasses).search_for(*search_options) unless nested_obj
  values ||= case nested_obj
             when Host::Base, Hostgroup
               # NOTE: no search_for on array generated by all_puppetclasses
               nested_obj.puppet.all_puppetclasses
             else
               nested_obj.puppetclasses.search_for(*search_options)
             end
  @total   = Puppetclass.count unless nested_obj
  @total ||= case nested_obj
             when Host::Base, Hostgroup
               values.count
             else
               nested_obj.puppetclasses.count
             end
  @subtotal = values.count
  if params[:style] == 'list'
    @puppetclasses = values
    render :list
  else
    @puppetclasses = Puppetclass.classes2hash_v2(values.paginate(paginate_options))
  end
end

#resource_classObject



87
88
89
# File 'app/controllers/foreman_puppet/api/v2/puppetclasses_controller.rb', line 87

def resource_class
  ForemanPuppet::Puppetclass
end

#showObject



54
55
# File 'app/controllers/foreman_puppet/api/v2/puppetclasses_controller.rb', line 54

def show
end

#updateObject



75
76
77
78
# File 'app/controllers/foreman_puppet/api/v2/puppetclasses_controller.rb', line 75

def update
  class_params = puppetclass_params.merge(smart_class_parameter_ids: @puppetclass.smart_class_parameters.map(&:id))
  process_response @puppetclass.update(class_params)
end