Class: ConsulACLPolicyClient

Inherits:
PuppetX::Consul::ACLBase::BaseClient
  • Object
show all
Defined in:
lib/puppet/provider/consul_policy/default.rb

Instance Method Summary collapse

Instance Method Details

#create_body(policy) ⇒ Object



173
174
175
176
177
178
179
180
181
# File 'lib/puppet/provider/consul_policy/default.rb', line 173

def create_body(policy)
  body = {}
  body.store('Name', policy.name)
  body.store('Description', policy.description)
  body.store('Datacenters', policy.datacenters)
  body.store('Rules', policy.rules)

  body
end

#create_policy(policy, tries) ⇒ Object



160
161
162
163
164
165
# File 'lib/puppet/provider/consul_policy/default.rb', line 160

def create_policy(policy, tries)
  body = create_body(policy)

  response = put('/policy', body, tries)
  policy.id = response['ID']
end

#delete_policy(id) ⇒ Object



183
184
185
# File 'lib/puppet/provider/consul_policy/default.rb', line 183

def delete_policy(id)
  delete('/policy/' + id)
end

#get_all_policies(max_tries) ⇒ Object



143
144
145
146
147
148
149
150
151
152
# File 'lib/puppet/provider/consul_policy/default.rb', line 143

def get_all_policies(max_tries)
  response = get('/policies', max_tries)

  collection = []
  response.each do |item|
    collection.push(ConsulPolicy.new(item['ID'], item['Name'], item['Description'], item['Datacenters'], nil))
  end

  collection
end

#get_policy_rules(policy_id, max_tries) ⇒ Object



154
155
156
157
158
# File 'lib/puppet/provider/consul_policy/default.rb', line 154

def get_policy_rules(policy_id, max_tries)
  response = get('/policy/' + policy_id, max_tries)

  response['Rules']
end

#update_policy(policy) ⇒ Object



167
168
169
170
171
# File 'lib/puppet/provider/consul_policy/default.rb', line 167

def update_policy(policy)
  body = create_body(policy)

  put('/policy/' + policy.id, body)
end