Merge branch 'feature/improving-build-script' into develop
This commit is contained in:
32
deploy.sh
32
deploy.sh
@@ -1,4 +1,30 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
docker stack deploy \
|
set -euo pipefail
|
||||||
-c docker-compose-deploy.yml \
|
|
||||||
utility-bills-tracker
|
COMPOSE_FILE="docker-compose-deploy.yml"
|
||||||
|
PACKAGE_JSON="package.json"
|
||||||
|
STACK_NAME=${STACK_NAME:-utility-bills-tracker}
|
||||||
|
|
||||||
|
if [ ! -f "$PACKAGE_JSON" ]; then
|
||||||
|
echo "package.json not found" >&2
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Extract version (prefer jq if available)
|
||||||
|
if command -v jq >/dev/null 2>&1; then
|
||||||
|
APP_VERSION=$(jq -r '.version' "$PACKAGE_JSON")
|
||||||
|
else
|
||||||
|
APP_VERSION=$(grep -E '"version"' "$PACKAGE_JSON" | head -1 | sed -E 's/.*"version"[[:space:]]*:[[:space:]]*"([^"]+)".*/\1/')
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ -z "${APP_VERSION:-}" ] || [ "$APP_VERSION" = "null" ]; then
|
||||||
|
echo "Could not determine app version from package.json" >&2
|
||||||
|
exit 2
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "Deploying $STACK_NAME with image version: $APP_VERSION"
|
||||||
|
|
||||||
|
# Pass IMAGE_VERSION env var for compose variable substitution
|
||||||
|
IMAGE_VERSION="$APP_VERSION" docker stack deploy \
|
||||||
|
-c "$COMPOSE_FILE" \
|
||||||
|
"$STACK_NAME"
|
||||||
|
|||||||
@@ -13,7 +13,7 @@ networks:
|
|||||||
|
|
||||||
services:
|
services:
|
||||||
web-app:
|
web-app:
|
||||||
image: utility-bills-tracker:1.56.0
|
image: utility-bills-tracker:${IMAGE_VERSION}
|
||||||
networks:
|
networks:
|
||||||
- traefik-network
|
- traefik-network
|
||||||
- mongo-network
|
- mongo-network
|
||||||
|
|||||||
Reference in New Issue
Block a user