forked from toolshed/abra
		
	Merge pull request 'Use set -a/+a and docker env file formats' (#55) from use-set-a into main
Reviewed-on: https://git.autonomic.zone/coop-cloud/abra/pulls/55
This commit is contained in:
		| @ -5,6 +5,7 @@ | ||||
| - `new <app>` becomes `new <type>` ([#48](https://git.autonomic.zone/coop-cloud/abra/issues/48)) | ||||
| - `check` is run on `deploy` now and configurable ([77ba5652b2fe15820f5edfa0f642636f7b8eae7e](https://git.autonomic.zone/coop-cloud/abra/commit/77ba5652b2fe15820f5edfa0f642636f7b8eae7e)) | ||||
| - App configurations are always updated now ([#42](https://git.autonomic.zone/coop-cloud/abra/issues/42)) | ||||
| - We use docker format `.env` files (no "export" syntax) from now now ([#55](https://git.autonomic.zone/coop-cloud/abra/pulls/55)) | ||||
|  | ||||
| # abra 0.4.1 (2020-12-24) | ||||
|  | ||||
|  | ||||
							
								
								
									
										17
									
								
								abra
									
									
									
									
									
								
							
							
						
						
									
										17
									
								
								abra
									
									
									
									
									
								
							| @ -336,7 +336,7 @@ require_app_latest() { | ||||
| } | ||||
|  | ||||
| # FIXME 3wc: update or remove | ||||
| if [ -z "$ABRA_ENV" ] && [ -f .envrc ] && type direnv > /dev/null 2>&1 && ! direnv status | grep -q 'Found RC allowed true'; then | ||||
| if [ -z "$ABRA_ENV" ] && [ -f .env ] && type direnv > /dev/null 2>&1 && ! direnv status | grep -q 'Found RC allowed true'; then | ||||
|   error "direnv is blocked, run direnv allow" | ||||
| fi | ||||
|  | ||||
| @ -403,8 +403,11 @@ load_instance() { | ||||
| } | ||||
|  | ||||
| load_instance_env() { | ||||
|   set -a | ||||
|   # shellcheck disable=SC1090 | ||||
|   source "$ENV_FILE" | ||||
|   set +a | ||||
|  | ||||
|   if [ -z "$APP" ]; then | ||||
|     error "APP not set, maybe $ENV_FILE is using an old format?" | ||||
|   fi | ||||
| @ -525,10 +528,14 @@ sub_app_list (){ | ||||
|     FILE="${PARTS[-1]}" | ||||
|     SERVER="${PARTS[-2]}" | ||||
|     DOMAIN="${FILE%.env}" | ||||
|  | ||||
|     set -a | ||||
|     # shellcheck disable=SC1090 | ||||
|     APP="$(source "$ENV_FILE" && echo "$APP")" | ||||
|     # shellcheck disable=SC1090 | ||||
|     APP_STACK_NAME="$(source "$ENV_FILE" && echo "$STACK_NAME")" | ||||
|     set +a | ||||
|  | ||||
|     if [ -z "$APP_STACK_NAME" ]; then | ||||
|       APP_STACK_NAME="${DOMAIN//./_}" | ||||
|     fi | ||||
| @ -585,7 +592,7 @@ sub_app_new (){ | ||||
|     # FIXME 3wc: offer to user $STACK_$DOMAIN.env name instead | ||||
|   fi | ||||
|  | ||||
|   cp "$APP_DIR/.envrc.sample" "$ENV_FILE" | ||||
|   cp "$APP_DIR/.env.sample" "$ENV_FILE" | ||||
|   sed -i "s/$APP\.example\.com/$DOMAIN/g" "$ENV_FILE" | ||||
|   sed -i "s/example\.com/$DOMAIN/g" "$ENV_FILE" | ||||
|  | ||||
| @ -676,8 +683,8 @@ sub_app_check (){ | ||||
|  | ||||
|   #APP_ENV=$(grep -v '^#' "$ENV_FILE" | sed 's/^.* \([^=]\+\)=.*/\1/' | sort) | ||||
|   APP_ENV=$(grep -v '^#' "$ENV_FILE" | cut -d' ' -f2 | cut -d'=' -f1 | sort) | ||||
|   #STACK_ENV=$(grep -v '^#' "$APP_DIR/.envrc.sample" | sed 's/^.* \([^=]\+\)=.*/\1/' | sort) | ||||
|   STACK_ENV=$(grep -v '^#' "$APP_DIR/.envrc.sample" | cut -d' ' -f2 | cut -d'=' -f1 | sort) | ||||
|   #STACK_ENV=$(grep -v '^#' "$APP_DIR/.env.sample" | sed 's/^.* \([^=]\+\)=.*/\1/' | sort) | ||||
|   STACK_ENV=$(grep -v '^#' "$APP_DIR/.env.sample" | cut -d' ' -f2 | cut -d'=' -f1 | sort) | ||||
|  | ||||
|   # Only show "1", items in STACK_ENV which aren't in APP_ENV | ||||
|   MISSING_VARS=$(comm -23 <(echo "$STACK_ENV") <(echo "$APP_ENV")) | ||||
| @ -1031,8 +1038,10 @@ abra() { | ||||
|  | ||||
|   # --env <env> | ||||
|   if [ -n "$abra___env" ]; then | ||||
|     set -a | ||||
|     # shellcheck disable=SC1090 | ||||
|     source "$abra___env" || error "Unable to load env from '$abra___env'" | ||||
|     set +a | ||||
|   fi | ||||
|  | ||||
|   load_custom_commands | ||||
|  | ||||
		Reference in New Issue
	
	Block a user