bugfix/main-13-UpdateConfigurations #17
@@ -88,20 +88,55 @@ pipeline {
|
|||||||
sh '''
|
sh '''
|
||||||
set -e
|
set -e
|
||||||
|
|
||||||
|
OLD_BACKEND_LATEST_ID=$(docker images -q cafeteria-backend:latest || true)
|
||||||
|
OLD_BACKEND_PREVIOUS_ID=$(docker images -q cafeteria-backend:previous || true)
|
||||||
|
OLD_FRONTEND_LATEST_ID=$(docker images -q cafeteria-frontend:latest || true)
|
||||||
|
OLD_FRONTEND_PREVIOUS_ID=$(docker images -q cafeteria-frontend:previous || true)
|
||||||
|
|
||||||
docker build \
|
docker build \
|
||||||
--build-arg APP_VERSION=${APP_VERSION} \
|
--build-arg APP_VERSION=${APP_VERSION} \
|
||||||
--build-arg GIT_COMMIT=${COMMIT_SHORT} \
|
--build-arg GIT_COMMIT=${COMMIT_SHORT} \
|
||||||
--build-arg COMMIT_AUTHOR="${COMMIT_AUTHOR}" \
|
--build-arg COMMIT_AUTHOR="${COMMIT_AUTHOR}" \
|
||||||
--build-arg BUILD_NUMBER=${BUILD_NUMBER} \
|
--build-arg BUILD_NUMBER=${BUILD_NUMBER} \
|
||||||
-t cafeteria-backend:${BUILD_NUMBER} \
|
|
||||||
-t cafeteria-backend:latest \
|
-t cafeteria-backend:latest \
|
||||||
./backend
|
./backend
|
||||||
|
|
||||||
docker build \
|
docker build \
|
||||||
--build-arg VITE_API_BASE=${VITE_API_BASE} \
|
--build-arg VITE_API_BASE=${VITE_API_BASE} \
|
||||||
-t cafeteria-frontend:${BUILD_NUMBER} \
|
|
||||||
-t cafeteria-frontend:latest \
|
-t cafeteria-frontend:latest \
|
||||||
./frontend
|
./frontend
|
||||||
|
|
||||||
|
NEW_BACKEND_LATEST_ID=$(docker images -q cafeteria-backend:latest || true)
|
||||||
|
NEW_FRONTEND_LATEST_ID=$(docker images -q cafeteria-frontend:latest || true)
|
||||||
|
|
||||||
|
if [ -n "$OLD_BACKEND_LATEST_ID" ]; then
|
||||||
|
docker tag "$OLD_BACKEND_LATEST_ID" cafeteria-backend:previous
|
||||||
|
fi
|
||||||
|
if [ -n "$OLD_FRONTEND_LATEST_ID" ]; then
|
||||||
|
docker tag "$OLD_FRONTEND_LATEST_ID" cafeteria-frontend:previous
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ -n "$OLD_BACKEND_PREVIOUS_ID" ] && \
|
||||||
|
[ "$OLD_BACKEND_PREVIOUS_ID" != "$OLD_BACKEND_LATEST_ID" ] && \
|
||||||
|
[ "$OLD_BACKEND_PREVIOUS_ID" != "$NEW_BACKEND_LATEST_ID" ]; then
|
||||||
|
docker rmi "$OLD_BACKEND_PREVIOUS_ID" || true
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ -n "$OLD_FRONTEND_PREVIOUS_ID" ] && \
|
||||||
|
[ "$OLD_FRONTEND_PREVIOUS_ID" != "$OLD_FRONTEND_LATEST_ID" ] && \
|
||||||
|
[ "$OLD_FRONTEND_PREVIOUS_ID" != "$NEW_FRONTEND_LATEST_ID" ]; then
|
||||||
|
docker rmi "$OLD_FRONTEND_PREVIOUS_ID" || true
|
||||||
|
fi
|
||||||
|
|
||||||
|
cleanup_tags() {
|
||||||
|
repo="$1"
|
||||||
|
docker images --format "{{.Repository}}:{{.Tag}}" \
|
||||||
|
| awk -v repo="$repo" '$0 ~ "^"repo":" && $0 !~ /:latest$|:previous$/' \
|
||||||
|
| xargs -r docker rmi || true
|
||||||
|
}
|
||||||
|
|
||||||
|
cleanup_tags cafeteria-backend
|
||||||
|
cleanup_tags cafeteria-frontend
|
||||||
'''
|
'''
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -128,7 +163,7 @@ pipeline {
|
|||||||
|
|
||||||
echo "Deploying backend ${BUILD_NUMBER}"
|
echo "Deploying backend ${BUILD_NUMBER}"
|
||||||
|
|
||||||
BACKEND_TAG=${BUILD_NUMBER} FRONTEND_TAG=${BUILD_NUMBER} docker-compose up -d
|
BACKEND_TAG=latest FRONTEND_TAG=latest docker-compose up -d
|
||||||
'''
|
'''
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user