dsh 0.2.0-rc.2: in-container update (experimental channel), path-agnostic compose, upstream patches adapted to 0.1.x/0.2.x
This commit is contained in:
commit
e6dcef9bf5
302 files changed
+75178
No files matched your search
@@ -0,0 +1,41 @@
|
||||
#!/bin/sh
|
||||
# ════════════════════════════════════════════════════════════════════════════
|
||||
# Сборка образа dsh из вендоренного исходника (upstream/) в локальный Docker.
|
||||
# Пин сообщества (latestSupportedDsh) в dev-режиме сборки не действует — версию
|
||||
# задаём явно. Результат тегируется в реестр archeon.
|
||||
#
|
||||
# Использование:
|
||||
# scripts/build-image.sh # версия = npm dist-tag latest
|
||||
# scripts/build-image.sh 0.2.0-rc.2 # конкретная версия
|
||||
# scripts/build-image.sh 0.2.0-rc.2 --push # + docker push в реестр
|
||||
# ════════════════════════════════════════════════════════════════════════════
|
||||
set -eu
|
||||
cd "$(dirname "$0")/.."
|
||||
|
||||
VERSION=${1:-}
|
||||
PUSH=0
|
||||
[ "${2:-}" = --push ] && PUSH=1
|
||||
if [ -z "$VERSION" ] || [ "$VERSION" = latest ]; then
|
||||
VERSION=$(curl -fsS https://registry.npmjs.org/-/package/@deepseek-ai%2Fdsh/dist-tags | sed -n 's/.*"latest":"\([^"]*\)".*/\1/p')
|
||||
[ -n "$VERSION" ] || { echo "не удалось определить npm latest" >&2; exit 1; }
|
||||
fi
|
||||
|
||||
IMAGE=${DSH_IMAGE:-gitea.archeon.io/archeon/dsh}
|
||||
REPO=${IMAGE%%:*}
|
||||
echo "=== Сборка $REPO:$VERSION (DSH_VERSION=$VERSION)"
|
||||
DOCKER_BUILDKIT=1 docker build \
|
||||
--build-arg DSH_VERSION="$VERSION" \
|
||||
-t "$REPO:$VERSION" \
|
||||
-t "$REPO:latest" \
|
||||
upstream/
|
||||
|
||||
echo "=== Проверка: версия внутри образа"
|
||||
docker run --rm --entrypoint /bin/sh "$REPO:$VERSION" \
|
||||
-c "grep -o '\"version\":\"[^\"]*\"' /opt/dsh-platform/seed/pristine/*/package.json | head -1"
|
||||
|
||||
if [ "$PUSH" = 1 ]; then
|
||||
echo "=== Push в реестр"
|
||||
docker push "$REPO:$VERSION"
|
||||
docker push "$REPO:latest"
|
||||
fi
|
||||
echo "Готово: $REPO:$VERSION (+ latest). Обновить стенд: docker compose -p dsh pull && docker compose -p dsh up -d"
|
||||
Reference in new issue
Block a user