12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
|
# File 'lib/confctl/cli/gen_data.rb', line 12
def vpsadmin_containers
api = vpsadmin_client
machines = ConfCtl::MachineList.new
data = {}
machines.each_value do |m|
next if m['container'].nil?
ct = api.vps.show(
m['container.id'],
meta: { includes: 'node__location__environment' }
)
ct_fqdn = [
m['host.name'],
m['host.location'],
m['host.domain']
].compact.join('.')
data[ct_fqdn] = {
node: {
id: ct.node.id,
name: ct.node.name,
location: ct.node.location.domain,
domain: ct.node.location.environment.domain,
fqdn: "#{ct.node.domain_name}.#{ct.node.location.environment.domain}"
}
}
end
update_file('vpsadmin/containers.nix') do |f|
f.puts(ConfCtl::NixFormat.to_nix(data))
end
end
|