diff options
| author | tv <tv@krebsco.de> | 2015-05-20 21:58:59 +0200 | 
|---|---|---|
| committer | tv <tv@krebsco.de> | 2015-05-20 21:58:59 +0200 | 
| commit | e554c6a96718235a50d979daf2be1a8f41f3a2b5 (patch) | |
| tree | 5a2ae5f940941d76320c3dd6e43417103c940be1 | |
| parent | fc870549e7bb85d1482877784853d31e39a6fe09 (diff) | |
lib/cac.sh: add cac_getserver_by_servername
| -rwxr-xr-x | infest | 21 | ||||
| -rw-r--r-- | lib/cac.sh | 10 | ||||
| -rwxr-xr-x | networking-configuration | 20 | 
3 files changed, 27 insertions, 24 deletions
@@ -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 @@ -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 2cae396..77b9a45 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  | 
