test: E2E скрипт run_e2e_tests.sh + fix provider token/version в примерах
This commit is contained in:
Executable
+53
@@ -0,0 +1,53 @@
|
||||
#!/usr/bin/env bash
|
||||
# 2026-03-11 10:02
|
||||
# Скрипт: собирает минимальный образ и, при разрешении, пушит в реестр PearlHarbor
|
||||
# Требования: `docker` в PATH. Скрипт НЕ будет пушить без DO_PUSH=true.
|
||||
|
||||
set -euo pipefail
|
||||
|
||||
# Получаем значения из файла секретов
|
||||
SECRETS_FILE="secrets/pearlharbor_registry.txt"
|
||||
if [ ! -f "$SECRETS_FILE" ]; then
|
||||
echo "Файл с секретами не найден: $SECRETS_FILE"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
connection_url=$(grep -E '^connection_url=' "$SECRETS_FILE" | cut -d'=' -f2-)
|
||||
admin_pass=$(grep -E '^admin_pass=' "$SECRETS_FILE" | cut -d'=' -f2-)
|
||||
|
||||
if [ -z "$connection_url" ]; then
|
||||
echo "Не найден connection_url в $SECRETS_FILE"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Убираем протокол и возможный слеш на конце
|
||||
registry_host=$(echo "$connection_url" | sed -E 's~https?://~~' | sed -E 's~/$~~')
|
||||
|
||||
image_name="$registry_host/sless-sample:latest"
|
||||
|
||||
echo "Registry host: $registry_host"
|
||||
echo "Image name: $image_name"
|
||||
|
||||
echo "Собираю образ локально..."
|
||||
docker build -t sless-sample:local -f Dockerfile .. || {
|
||||
echo "Сборка не удалась"; exit 1
|
||||
}
|
||||
|
||||
echo "Готово. Образ: sless-sample:local"
|
||||
|
||||
if [ "${DO_PUSH:-}" != "true" ]; then
|
||||
echo "DO_PUSH != true — пуш не будет выполнен. Чтобы запушить: DO_PUSH=true ./build_and_push.sh"
|
||||
exit 0
|
||||
fi
|
||||
|
||||
# Если дошли до сюда — выполняем login/push
|
||||
registry_user=${REGISTRY_USER:-admin}
|
||||
|
||||
echo "Выполняю docker login к $registry_host как '$registry_user'"
|
||||
echo "$admin_pass" | docker login "$registry_host" -u "$registry_user" --password-stdin
|
||||
|
||||
echo "Тегирую и пушу образ: $image_name"
|
||||
docker tag sless-sample:local "$image_name"
|
||||
docker push "$image_name"
|
||||
|
||||
echo "Пуш завершён. Проверьте реестр для образа: $image_name"
|
||||
Reference in New Issue
Block a user