Revision 46b3d8f1
Added by Dominic Cleal about 10 years ago
app/services/classification/base.rb | ||
---|---|---|
module Classification
|
||
class Base
|
||
delegate :hostgroup, :environment_id,
|
||
delegate :hostgroup, :environment_id, :puppetclass_ids, :classes,
|
||
:to => :host
|
||
|
||
def initialize args = { }
|
||
... | ... | |
raise NotImplementedError
|
||
end
|
||
|
||
def puppetclass_ids
|
||
return @puppetclass_ids if @puppetclass_ids
|
||
ids = host.host_classes.pluck(:puppetclass_id)
|
||
ids += HostgroupClass.where(:hostgroup_id => hostgroup.path_ids).pluck(:puppetclass_id) if hostgroup
|
||
@puppetclass_ids = EnvironmentClass.where(:environment_id => host.environment_id, :puppetclass_id => ids).pluck('DISTINCT puppetclass_id')
|
||
end
|
||
|
||
def classes
|
||
Puppetclass.where(:id => puppetclass_ids)
|
||
end
|
||
|
||
def possible_value_orders
|
||
class_parameters.select do |key|
|
||
# take only keys with actual values
|
Also available in: Unified diff
fixes #5246 - remove second host/class lookup impl so config groups are included in ENC output