|  | @@ -33,7 +33,7 @@ PROJECT_NAME='freedombone'
 | 
	
		
			
			| 33 | 33 |  export TEXTDOMAIN=${PROJECT_NAME}-addcert
 | 
	
		
			
			| 34 | 34 |  export TEXTDOMAINDIR="/usr/share/locale"
 | 
	
		
			
			| 35 | 35 |  
 | 
	
		
			
			| 36 |  | -CONFIG_FILE=$HOME/${PROJECT_NAME}.cfg
 | 
	
		
			
			|  | 36 | +CONFIGURATION_FILE=$HOME/${PROJECT_NAME}.cfg
 | 
	
		
			
			| 37 | 37 |  COMPLETION_FILE=$HOME/${PROJECT_NAME}-completed.txt
 | 
	
		
			
			| 38 | 38 |  
 | 
	
		
			
			| 39 | 39 |  HOSTNAME=
 | 
	
	
		
			
			|  | @@ -50,6 +50,30 @@ INSTALL_DIR=/root/build
 | 
	
		
			
			| 50 | 50 |  LETSENCRYPT_SERVER='https://acme-v01.api.letsencrypt.org/directory'
 | 
	
		
			
			| 51 | 51 |  LETSENCRYPT_REPO="https://github.com/letsencrypt/letsencrypt"
 | 
	
		
			
			| 52 | 52 |  MY_EMAIL_ADDRESS=
 | 
	
		
			
			|  | 53 | +FRIENDS_TROVE_SERVER=
 | 
	
		
			
			|  | 54 | +FRIENDS_TROVE_PASSWORD=
 | 
	
		
			
			|  | 55 | +
 | 
	
		
			
			|  | 56 | +if [ -f $CONFIGURATION_FILE ]; then
 | 
	
		
			
			|  | 57 | +    if grep -q "LETSENCRYPT_REPO" $CONFIGURATION_FILE; then
 | 
	
		
			
			|  | 58 | +        LETSENCRYPT_REPO=$(grep "LETSENCRYPT_REPO" $CONFIGURATION_FILE | awk -F '=' '{print $2}')
 | 
	
		
			
			|  | 59 | +    fi
 | 
	
		
			
			|  | 60 | +    if grep -q "LETSENCRYPT_SERVER" $CONFIGURATION_FILE; then
 | 
	
		
			
			|  | 61 | +        LETSENCRYPT_SERVER=$(grep "LETSENCRYPT_SERVER" $CONFIGURATION_FILE | awk -F '=' '{print $2}')
 | 
	
		
			
			|  | 62 | +    fi
 | 
	
		
			
			|  | 63 | +
 | 
	
		
			
			|  | 64 | +    # use a trove?
 | 
	
		
			
			|  | 65 | +    if ! grep -q "FRIENDS_TROVE_SERVER" $CONFIGURATION_FILE; then
 | 
	
		
			
			|  | 66 | +        FRIENDS_TROVE_SERVER=$(grep "FRIENDS_TROVE_SERVER" $CONFIGURATION_FILE | awk -F '=' '{print $2}')
 | 
	
		
			
			|  | 67 | +        FRIENDS_TROVE_SSH_PORT=2222
 | 
	
		
			
			|  | 68 | +        if ! grep -q "FRIENDS_TROVE_PASSWORD" $CONFIGURATION_FILE; then
 | 
	
		
			
			|  | 69 | +            FRIENDS_TROVE_PASSWORD=$(grep "FRIENDS_TROVE_PASSWORD" $CONFIGURATION_FILE | awk -F '=' '{print $2}')
 | 
	
		
			
			|  | 70 | +        fi
 | 
	
		
			
			|  | 71 | +        if ! grep -q "FRIENDS_TROVE_SSH_PORT" $CONFIGURATION_FILE; then
 | 
	
		
			
			|  | 72 | +            FRIENDS_TROVE_SSH_PORT=$(grep "FRIENDS_TROVE_SSH_PORT" $CONFIGURATION_FILE | awk -F '=' '{print $2}')
 | 
	
		
			
			|  | 73 | +        fi
 | 
	
		
			
			|  | 74 | +        LETSENCRYPT_REPO="ssh://trove@${FRIENDS_TROVE_SERVER}:${FRIENDS_TROVE_SSH_PORT}/home/trove/letsencrypt"
 | 
	
		
			
			|  | 75 | +    fi
 | 
	
		
			
			|  | 76 | +fi
 | 
	
		
			
			| 53 | 77 |  
 | 
	
		
			
			| 54 | 78 |  function show_help {
 | 
	
		
			
			| 55 | 79 |      echo ''
 | 
	
	
		
			
			|  | @@ -157,14 +181,32 @@ fi
 | 
	
		
			
			| 157 | 181 |  
 | 
	
		
			
			| 158 | 182 |  CERTFILE=$HOSTNAME
 | 
	
		
			
			| 159 | 183 |  
 | 
	
		
			
			|  | 184 | +function git_clone {
 | 
	
		
			
			|  | 185 | +    repo_url="$1"
 | 
	
		
			
			|  | 186 | +    destination_dir="$2"
 | 
	
		
			
			|  | 187 | +    if [[ "$repo_url" == "ssh:"* ]]; then
 | 
	
		
			
			|  | 188 | +        if [ "${FRIENDS_TROVE_SERVER}" ]; then
 | 
	
		
			
			|  | 189 | +            if [ ${#FRIENDS_TROVE_SERVER} -gt 2 ]; then
 | 
	
		
			
			|  | 190 | +                if [ "$FRIENDS_TROVE_PASSWORD" ]; then
 | 
	
		
			
			|  | 191 | +                    if [ ${#FRIENDS_TROVE_PASSWORD} -gt 2 ]; then
 | 
	
		
			
			|  | 192 | +                        sshpass -p "$FRIENDS_TROVE_PASSWORD" git clone "$repo_url" "$destination_dir"
 | 
	
		
			
			|  | 193 | +                        return
 | 
	
		
			
			|  | 194 | +                    fi
 | 
	
		
			
			|  | 195 | +                fi
 | 
	
		
			
			|  | 196 | +            fi
 | 
	
		
			
			|  | 197 | +        fi
 | 
	
		
			
			|  | 198 | +    fi
 | 
	
		
			
			|  | 199 | +    git clone "$repo_url" "$destination_dir"
 | 
	
		
			
			|  | 200 | +}
 | 
	
		
			
			|  | 201 | +
 | 
	
		
			
			| 160 | 202 |  function add_cert_letsencrypt {
 | 
	
		
			
			| 161 | 203 |      CERTFILE=$LETSENCRYPT_HOSTNAME
 | 
	
		
			
			| 162 | 204 |  
 | 
	
		
			
			| 163 | 205 |      # obtain the email address for the admin user
 | 
	
		
			
			| 164 | 206 |      if [ ! $MY_EMAIL_ADDRESS ]; then
 | 
	
		
			
			| 165 |  | -        if [ -f $CONFIG_FILE ]; then
 | 
	
		
			
			| 166 |  | -            if grep -q "MY_EMAIL_ADDRESS=" $CONFIG_FILE; then
 | 
	
		
			
			| 167 |  | -                MY_EMAIL_ADDRESS=$(cat $CONFIG_FILE | grep "MY_EMAIL_ADDRESS=" | awk -F '=' '{print $2}')
 | 
	
		
			
			|  | 207 | +        if [ -f $CONFIGURATION_FILE ]; then
 | 
	
		
			
			|  | 208 | +            if grep -q "MY_EMAIL_ADDRESS=" $CONFIGURATION_FILE; then
 | 
	
		
			
			|  | 209 | +                MY_EMAIL_ADDRESS=$(cat $CONFIGURATION_FILE | grep "MY_EMAIL_ADDRESS=" | awk -F '=' '{print $2}')
 | 
	
		
			
			| 168 | 210 |              fi
 | 
	
		
			
			| 169 | 211 |          fi
 | 
	
		
			
			| 170 | 212 |      fi
 | 
	
	
		
			
			|  | @@ -184,7 +226,7 @@ function add_cert_letsencrypt {
 | 
	
		
			
			| 184 | 226 |  
 | 
	
		
			
			| 185 | 227 |      # obtain the repo
 | 
	
		
			
			| 186 | 228 |      if [ ! -d ${INSTALL_DIR}/letsencrypt ]; then
 | 
	
		
			
			| 187 |  | -        git clone $LETSENCRYPT_REPO ${INSTALL_DIR}/letsencrypt
 | 
	
		
			
			|  | 229 | +        git_clone $LETSENCRYPT_REPO ${INSTALL_DIR}/letsencrypt
 | 
	
		
			
			| 188 | 230 |          if [ ! -d ${INSTALL_DIR}/letsencrypt ]; then
 | 
	
		
			
			| 189 | 231 |              exit 76283
 | 
	
		
			
			| 190 | 232 |          fi
 |