summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authortv <tv@shackspace.de>2015-05-20 21:58:59 +0200
committertv <tv@shackspace.de>2015-05-20 21:58:59 +0200
commit3cc354008a76f061ab4708922b7c0f3a8d37097b (patch)
tree5a2ae5f940941d76320c3dd6e43417103c940be1
parenta2970fcae78b9973c20bdcb78a8a4ec0170aac93 (diff)
lib/cac.sh: add cac_getserver_by_servername
-rwxr-xr-xinfest21
-rw-r--r--lib/cac.sh10
-rwxr-xr-xnetworking-configuration20
3 files changed, 27 insertions, 24 deletions
diff --git a/infest b/infest
index c6d509a5..dc5e5407 100755
--- a/infest
+++ b/infest
@@ -19,12 +19,9 @@ nix_find_sha1sum=86f8775bd4f0841edd4c816df861cebf509d58c3
# hostname=
main() {
- listservers=$(cac_listservers)
+ server=$(cac_getserver_by_servername "$cac_servername")
- config=$(echo $listservers \
- | jq -r ".[]|select(.servername==\"$cac_servername\")")
-
- serverstatus=$(echo $config | jq -r .status)
+ serverstatus=$(echo $server | jq -r .status)
case $serverstatus in
'Powered On') : ;;
*)
@@ -32,9 +29,9 @@ main() {
exit 2
esac
- template=$(echo $config | jq -r .template)
+ template=$(echo $server | jq -r .template)
case $template in
- 'CentOS-7-64bit') infest_centos7_64bit "$config";;
+ 'CentOS-7-64bit') infest_centos7_64bit "$server";;
*)
echo $0: bad template: $template >&2
exit 3
@@ -43,14 +40,14 @@ main() {
infest_centos7_64bit() {
- config=$1
- address=$(echo $config | jq -r .ip)
- gateway=$(echo $config | jq -r .gateway)
+ server=$1
+ address=$(echo $server | jq -r .ip)
+ gateway=$(echo $server | jq -r .gateway)
nameserver=8.8.8.8
- netmask=$(echo $config | jq -r .netmask)
+ netmask=$(echo $server | jq -r .netmask)
prefixLength=$(netmaskToPrefixLengh $netmask)
RSYNC_RSH='sshpass -e ssh -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null'
- SSHPASS=$(echo $config | jq -r .rootpass)
+ SSHPASS=$(echo $server | jq -r .rootpass)
export SSHPASS
export RSYNC_RSH
diff --git a/lib/cac.sh b/lib/cac.sh
index 482e4dde..c78576eb 100644
--- a/lib/cac.sh
+++ b/lib/cac.sh
@@ -1,5 +1,15 @@
. ./lib/url.sh
+
+cac_getserver_by_servername() {(
+ serverlist=$(cac_listservers)
+ echo $serverlist \
+ | jq \
+ --arg name "$1" \
+ '.[]|select(.servername==$name)'
+)}
+
+
cac_listservers() {(
listservers=$(_cac_get_api_v1 listservers)
status=$(echo "$listservers" | jq -r .status)
diff --git a/networking-configuration b/networking-configuration
index 2cae3966..77b9a45b 100755
--- a/networking-configuration
+++ b/networking-configuration
@@ -19,22 +19,18 @@ hostname=$2
# hostname=
-main() {
- listservers=$(cac_listservers)
-
- config=$(echo $listservers \
- | jq -r ".[]|select(.servername==\"$cac_servername\")")
-
- print_networking_configuraton "$config"
-}
+main() {(
+ server=$(cac_getserver_by_servername "$cac_servername")
+ print_networking_configuraton "$server"
+)}
print_networking_configuraton() {
- config=$1
- address=$(echo $config | jq -r .ip)
- gateway=$(echo $config | jq -r .gateway)
+ server=$1
+ address=$(echo $server | jq -r .ip)
+ gateway=$(echo $server | jq -r .gateway)
nameserver=8.8.8.8
- netmask=$(echo $config | jq -r .netmask)
+ netmask=$(echo $server | jq -r .netmask)
prefixLength=$(netmaskToPrefixLengh $netmask)
# TODO generate all config and put it into a temp dir, then rsync that