Files
ermnvldmr.com/ci/scripts/deploy-static.sh
T
deytenit 4e0bb72e29
packages/kits - next/required / Setup - Stage (push) Successful in 41s
packages/ssg - next/required / Setup - Stage (push) Successful in 39s
packages/stl - next/required / Setup - Stage (push) Successful in 41s
packages/ui - next/required / Setup - Stage (push) Successful in 41s
services/docs - next/required / Setup - Hugo (push) Successful in 3s
packages/kits - next/required / Build - Configs & UI (push) Successful in 31s
packages/ui - next/required / Build - Configs (push) Successful in 25s
services/static - next/required / Build - Configs (push) Successful in 22s
services/static - next/required / Setup - Stage (push) Successful in 41s
services/www - next/required / Setup - Stage (push) Successful in 40s
packages/ssg - next/required / Build - Configs (push) Successful in 19s
packages/stl - next/required / Build - Configs (push) Successful in 19s
services/docs - next/required / Build - Hugo Site (push) Successful in 4s
packages/kits - next/required / Lint - Kits (push) Successful in 53s
packages/kits - next/required / Test - Unit (push) Successful in 26s
services/www - next/required / Build - Configs (push) Successful in 25s
packages/kits - next/required / Typecheck - Kits (push) Successful in 22s
packages/kits - next/required / Build - Storybook (push) Successful in 32s
packages/kits - next/required / Build - Kits (push) Successful in 24s
packages/ssg - next/required / Lint - SSG (push) Successful in 21s
packages/ssg - next/required / Typecheck - SSG (push) Successful in 19s
packages/ssg - next/required / Build - SSG (push) Successful in 19s
packages/stl - next/required / Lint - STL (push) Successful in 22s
packages/stl - next/required / Typecheck - STL (push) Successful in 19s
packages/stl - next/required / Test - STL (push) Successful in 20s
packages/stl - next/required / Build - STL (push) Successful in 20s
packages/ui - next/required / Lint - UI (push) Successful in 29s
packages/ui - next/required / Typecheck - UI (push) Successful in 21s
packages/ui - next/required / Test - Unit (push) Successful in 29s
packages/ui - next/required / Build - Storybook (push) Successful in 30s
packages/ui - next/required / Build - UI (push) Successful in 25s
services/docs - next/required / Release - Docker Image (push) Successful in 35s
services/static - next/required / Lint - Static (push) Successful in 24s
services/static - next/required / Typecheck - Static (push) Successful in 22s
services/static - next/required / Build - Static Site (push) Successful in 23s
services/www - next/required / Lint - WWW (push) Successful in 27s
services/www - next/required / Typecheck - WWW (push) Successful in 21s
services/www - next/required / Build - Storybook (push) Successful in 29s
services/www - next/required / Test - Unit (push) Successful in 21s
services/www - next/required / Build - WWW Service (push) Successful in 41s
packages/kits - next/required / Test - Storybook (push) Successful in 1m38s
packages/ui - next/required / Test - Storybook (push) Successful in 2m22s
services/docs - next/required / Deploy - Kubernetes (GitOps) (push) Successful in 3s
services/static - next/required / Deploy - S3 (push) Failing after 17s
services/www - next/required / Test - Storybook (push) Successful in 1m38s
services/docs - next/required / Verify - Production Rollout (push) Failing after 7m53s
services/www - next/required / Build - Docker Image (push) Successful in 2m11s
fix(ci): route git_write to gitea host IP and configure s3 concurrency
2026-11-08 03:44:21 +03:00

52 lines
1.2 KiB
Bash
Executable File

#!/bin/bash
set -e
echo "Deploying static service to S3..."
# Verify required environment variables
if [ -z "$S3_BUCKET" ]; then
echo "Error: S3_BUCKET environment variable is not set"
exit 1
fi
if [ -z "$AWS_REGION" ]; then
echo "Error: AWS_REGION environment variable is not set"
exit 1
fi
if [ -z "$S3_ENDPOINT_URL" ]; then
echo "Error: S3_ENDPOINT_URL environment variable is not set"
exit 1
fi
# Navigate to the dist directory
DIST_DIR="services/static/dist"
if [ ! -d "$DIST_DIR" ]; then
echo "Error: Build directory $DIST_DIR does not exist"
exit 1
fi
# Configure AWS region
export AWS_DEFAULT_REGION="$AWS_REGION"
ENDPOINT_URL="${S3_ENDPOINT_URL%/}"
# Set S3 max_concurrent_requests to 1 to prevent race conditions on S3-compatible endpoints
aws configure set default.s3.max_concurrent_requests 1
# Upload all static files with retry
echo "Uploading static files..."
for attempt in 1 2 3; do
echo "Attempt $attempt/3: syncing static files..."
if aws s3 sync "$DIST_DIR/" "s3://$S3_BUCKET/" \
--endpoint-url="$ENDPOINT_URL" \
--cache-control "max-age=300"; then
echo "Static files deployed successfully!"
exit 0
fi
sleep 2
done
echo "Error: Failed to upload static files after 3 attempts."
exit 1