Initialize project without preview renderer
This commit is contained in:
@@ -0,0 +1,45 @@
|
||||
#!/bin/bash
|
||||
set -euo pipefail
|
||||
|
||||
# --- Configuration -----------------------------------------------------------
|
||||
# Provide your own values via environment variables or edit the defaults below.
|
||||
BUCKET_NAME="${BUCKET_NAME:-lenssim-static-prod}"
|
||||
CLOUDFRONT_ID="${CLOUDFRONT_ID:-EM92WLNGPGOVA}"
|
||||
CLOUDFRONT_DOMAIN="${CLOUDFRONT_DOMAIN:-d3z407nghipey.cloudfront.net}"
|
||||
AWS_REGION="${AWS_REGION:-eu-central-1}"
|
||||
|
||||
if [[ -z "${BUCKET_NAME}" ]]; then
|
||||
echo "❌ Please set BUCKET_NAME (env var or inside deploy.sh) before deploying." >&2
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if [[ "${CLOUDFRONT_ID}" == "YOUR_CLOUDFRONT_DIST_ID" || -z "${CLOUDFRONT_ID}" ]]; then
|
||||
echo "❌ Please set CLOUDFRONT_ID (env var or inside deploy.sh) before deploying." >&2
|
||||
exit 1
|
||||
fi
|
||||
|
||||
echo "🚀 Building LensSim SPA..."
|
||||
npm run build
|
||||
|
||||
echo "📦 Syncing hashed assets to s3://${BUCKET_NAME}..."
|
||||
aws s3 sync dist/ s3://${BUCKET_NAME} \
|
||||
--delete \
|
||||
--exclude "index.html" \
|
||||
--cache-control "public, max-age=31536000, immutable"
|
||||
|
||||
echo "🗂 Uploading index.html with no-cache headers..."
|
||||
aws s3 cp dist/index.html s3://${BUCKET_NAME}/index.html \
|
||||
--cache-control "no-cache, no-store, must-revalidate" \
|
||||
--content-type "text/html"
|
||||
|
||||
echo "🔄 Creating CloudFront invalidation for shell files..."
|
||||
aws cloudfront create-invalidation \
|
||||
--distribution-id "${CLOUDFRONT_ID}" \
|
||||
--paths "/" "/index.html" \
|
||||
--output text > /dev/null
|
||||
|
||||
echo
|
||||
echo "✅ Deployment finished."
|
||||
echo "🌐 CloudFront URL: https://${CLOUDFRONT_DOMAIN}/"
|
||||
echo "🪣 S3 Website (if enabled): http://${BUCKET_NAME}.s3-website.${AWS_REGION}.amazonaws.com/"
|
||||
echo "⏱️ Note: CloudFront edge caches can take a few minutes to refresh."
|
||||
Reference in New Issue
Block a user