Class: Pvectl::Repositories::Dns
- Defined in:
- lib/pvectl/repositories/dns.rb
Overview
Repository for per-node DNS resolver settings.
Uses the ‘/nodes/node/dns` endpoint to fetch and update the DNS configuration of a single node.
Instance Method Summary collapse
-
#fetch(node_name) ⇒ Models::DnsConfig
Fetches the DNS configuration for a node.
-
#update(node_name, params = {}) ⇒ void
Updates the DNS configuration for a node.
Methods inherited from Base
Constructor Details
This class inherits a constructor from Pvectl::Repositories::Base
Instance Method Details
#fetch(node_name) ⇒ Models::DnsConfig
Fetches the DNS configuration for a node.
25 26 27 28 29 |
# File 'lib/pvectl/repositories/dns.rb', line 25 def fetch(node_name) response = connection.client["nodes/#{node_name}/dns"].get data = extract_data(response) || {} build_model(data.merge(node: node_name)) end |
#update(node_name, params = {}) ⇒ void
This method returns an undefined value.
Updates the DNS configuration for a node.
The Proxmox PUT endpoint requires ‘search` and accepts optional `dns1`, `dns2`, `dns3`. Only provided keys are sent.
39 40 41 |
# File 'lib/pvectl/repositories/dns.rb', line 39 def update(node_name, params = {}) connection.client["nodes/#{node_name}/dns"].put(params) end |