Refactor config
This commit is contained in:
@@ -2,7 +2,7 @@ local terraform = import "lib/terraform.libsonnet";
|
||||
local config = import "config/config.libsonnet";
|
||||
|
||||
{
|
||||
"terraform.tf.json": std.manifestJson({
|
||||
"terraform/terraform.tf.json": std.manifestJson({
|
||||
terraform: {
|
||||
required_providers: {
|
||||
hcloud: {
|
||||
@@ -31,30 +31,30 @@ local config = import "config/config.libsonnet";
|
||||
for k in std.objectFields(config.sshKeys)
|
||||
},
|
||||
hcloud_server: {
|
||||
[s.name]: s.instance
|
||||
for s in config.servers
|
||||
[s]: config.servers[s].instance
|
||||
for s in std.objectFields(config.servers)
|
||||
},
|
||||
hetznerdns_zone: {
|
||||
infra: { name: config.infraDomain, ttl: config.defaultZoneTTL },
|
||||
},
|
||||
hetznerdns_record: std.foldl(function (a, b) a + b, [
|
||||
terraform.serverDnsRecords(s)
|
||||
for s in config.servers
|
||||
terraform.serverDnsRecords(config.servers[s])
|
||||
for s in std.objectFields(config.servers)
|
||||
], {})
|
||||
}
|
||||
}),
|
||||
"inventory.yaml": std.manifestYamlDoc({
|
||||
"ansible/inventory.yaml": std.manifestYamlDoc({
|
||||
all: {
|
||||
hosts: {
|
||||
[s.name]: s + {
|
||||
ansible_host: s.publicDomain,
|
||||
[s]: config.servers[s] + {
|
||||
ansible_host: config.servers[s].publicDomain,
|
||||
ansible_user: "root"
|
||||
}
|
||||
for s in config.servers
|
||||
for s in std.objectFields(config.servers)
|
||||
}
|
||||
}
|
||||
}),
|
||||
"site.yaml": std.manifestYamlDoc([
|
||||
"ansible/site.yaml": std.manifestYamlDoc([
|
||||
{
|
||||
name: "Test command",
|
||||
hosts: "all",
|
||||
|
||||
Reference in New Issue
Block a user