feat(frontend): use runtime NEXT_PUBLIC_WEBAPP_URL to replace build-time frontend value

This commit is contained in:
Connery Noble
2022-09-08 17:05:31 -07:00
parent 27821a9299
commit 46a0e729db
3 changed files with 9 additions and 4 deletions

View File

@@ -1,8 +1,6 @@
FROM node:16 as builder
WORKDIR /calcom
ARG NEXT_PUBLIC_WEBAPP_URL=http://localhost:3000
ARG NEXT_PUBLIC_APP_URL
ARG NEXT_PUBLIC_LICENSE_CONSENT
ARG CALCOM_TELEMETRY_DISABLED
ARG DATABASE_URL
@@ -10,8 +8,9 @@ ARG NEXTAUTH_SECRET=secret
ARG CALENDSO_ENCRYPTION_KEY=secret
ARG MAX_OLD_SPACE_SIZE=4096
ENV NEXT_PUBLIC_WEBAPP_URL=$NEXT_PUBLIC_WEBAPP_URL \
NEXT_PUBLIC_APP_URL=$NEXT_PUBLIC_APP_URL \
# PLACEHOLDER value is compiled in during build, but will be replaced it at runtime
# see: scripts/replace-placeholders.sh
ENV NEXT_PUBLIC_WEBAPP_URL=https://NEXT_PUBLIC_WEBAPP_URL_PLACEHOLDER \
NEXT_PUBLIC_LICENSE_CONSENT=$NEXT_PUBLIC_LICENSE_CONSENT \
CALCOM_TELEMETRY_DISABLED=$CALCOM_TELEMETRY_DISABLED \
DATABASE_URL=$DATABASE_URL \

View File

@@ -0,0 +1,5 @@
# Find and replace placeholder values with runtime-specific environment values
find apps/web/.next/ apps/web/public -type f |
while read file; do
sed -i "s|https://NEXT_PUBLIC_WEBAPP_URL_PLACEHOLDER|$NEXT_PUBLIC_WEBAPP_URL|g" "$file"
done

View File

@@ -1,6 +1,7 @@
#!/bin/sh
set -x
scripts/replace-placeholders.sh
scripts/wait-for-it.sh ${DATABASE_HOST} -- echo "database is up"
npx prisma migrate deploy --schema /calcom/packages/prisma/schema.prisma
npx ts-node --transpile-only /calcom/packages/prisma/seed-app-store.ts