UNPKG

1.01 kBapplication/x-shView Raw
1#!/bin/bash
2CONFIG=deploy.yaml
3
4# from http://stackoverflow.com/a/21189044/3239514
5function parse_yaml {
6 local prefix=$2
7 local s='[[:space:]]*' w='[a-zA-Z0-9_]*' fs=$(echo @|tr @ '\034')
8 sed -ne "s|^\($s\):|\1|" \
9 -e "s|^\($s\)\($w\)$s:$s[\"']\(.*\)[\"']$s\$|\1$fs\2$fs\3|p" \
10 -e "s|^\($s\)\($w\)$s:$s\(.*\)$s\$|\1$fs\2$fs\3|p" $1 |
11 awk -F$fs '{
12 indent = length($1)/2;
13 vname[indent] = $2;
14 for (i in vname) {if (i > indent) {delete vname[i]}}
15 if (length($3) > 0) {
16 vn=""; for (i=0; i<indent; i++) {vn=(vn)(vname[i])("_")}
17 printf("%s%s%s=\"%s\"\n", "'$prefix'", toupper(vn), toupper($2), $3);
18 }
19 }'
20}
21
22if [ ! -f "$CONFIG" ]; then
23 echo $CONFIG not found
24 exit 1
25fi
26
27eval $(parse_yaml $CONFIG "CONFIG_")
28
29if [ -z "$CONFIG_SERVER" ]; then
30 if [[ -z "$CONFIG_ELASTICBEANSTALK_REGION" ]]; then
31 echo CONFIG server is empty
32 exit 1
33 fi
34else
35 if [ -z "$CONFIG_PROJECT" ]; then
36 echo CONFIG project is empty
37 exit 1
38 fi
39fi
40