diff options
author | Trygve Laugstøl <trygvis@inamo.no> | 2019-07-24 12:53:07 +0200 |
---|---|---|
committer | Trygve Laugstøl <trygvis@inamo.no> | 2019-07-24 12:53:07 +0200 |
commit | 77f494aade651e755ab2a9236beeb6d7d135ebd3 (patch) | |
tree | 351b4f9191a03bb63f89f546d6f1edb9c3c35902 /terraform/ansible | |
parent | 80feac92f77b92455be6573de731bf4921022dd4 (diff) | |
download | k8s-sandbox-77f494aade651e755ab2a9236beeb6d7d135ebd3.tar.gz k8s-sandbox-77f494aade651e755ab2a9236beeb6d7d135ebd3.tar.bz2 k8s-sandbox-77f494aade651e755ab2a9236beeb6d7d135ebd3.tar.xz k8s-sandbox-77f494aade651e755ab2a9236beeb6d7d135ebd3.zip |
wip
Diffstat (limited to 'terraform/ansible')
-rwxr-xr-x[-rw-r--r--] | terraform/ansible/inventory | 23 |
1 files changed, 21 insertions, 2 deletions
diff --git a/terraform/ansible/inventory b/terraform/ansible/inventory index 95f5046..24bbc2e 100644..100755 --- a/terraform/ansible/inventory +++ b/terraform/ansible/inventory @@ -1,5 +1,24 @@ #!/bin/bash -set -euo pipefail +read -r -d '' script <<'EOF' +to_entries|map({(.key|tostring):.value.value})|add as $input | + +$input.k8s_node_names|to_entries|map({(.value):{ + ansible_host:$input.k8s_node_public_ips[.key], + private_ip:$input.k8s_node_private_ips[.key]} + }) as $nodes | + +{ + ansible_host:$input.k8s_master_ip.public_ip, + private_ip:$input.k8s_master_ip.private_ip, +} as $master | -(cd .. && terraform output -json) | jq 'to_entries|map({(.key|tostring):.value.value})|add as $input | $input.k8s_node_ips|to_entries|map({("k8s-node"+(.key|tostring)):{ansible_host:.value}})|add + {"k8s-master":{ansible_host:$input.k8s_master_ip}}|{_meta:{hostvars:.}, all:(["k8s-master"] + ($input.k8s_node_ips|to_entries|map("k8s-node"+(.key|tostring)))) }' +{_meta:{ + hostvars:([{"k8s-master": $master}]+$nodes|add)}, + all:(["k8s-master"] + ($input.k8s_node_names)), + "k8s-nodes":$input.k8s_node_names, +} +EOF + +set -euo pipefail +(cd .. && terraform output -json) | jq "$script" |