Module: Conjur::Policy::Planner
- Defined in:
- lib/conjur/policy/planner.rb,
lib/conjur/policy/planner/base.rb,
lib/conjur/policy/planner/facts.rb,
lib/conjur/policy/planner/grants.rb,
lib/conjur/policy/planner/record.rb,
lib/conjur/policy/planner/permissions.rb
Defined Under Namespace
Modules: ActsAsRecord
Classes: Base, BaseFacts, Deny, Grant, Permit, Policy, PrivilegeFacts, Record, Resource, Revoke, Role, RoleFacts, Webservice
Class Method Summary
collapse
Class Method Details
.plan(records, api, plan = nil) ⇒ Object
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
|
# File 'lib/conjur/policy/planner.rb', line 10
def plan records, api, plan = nil
plan ||= Plan.new
plan.tap do |plan|
Array(records).map{ |record| planner_for(record, api) }.each do |planner|
planner.plan = plan
planner.log { %Q(Planning "#{planner.record} using #{planner.class}") }
begin
planner.do_plan
planner.log { "\tFinished \"#{planner.record}\"" }
ensure
planner.plan = nil
end
end
end
end
|
.planner_for(record, api) ⇒ Object
26
27
28
29
30
31
32
33
|
# File 'lib/conjur/policy/planner.rb', line 26
def planner_for record, api
cls = begin
const_get record.class.name.split("::")[-1]
rescue NameError
Record
end
cls.new record, api
end
|