diff --git a/.gitea/workflows/build.yaml b/.gitea/workflows/build.yaml index 472e7a6..d3ee648 100644 --- a/.gitea/workflows/build.yaml +++ b/.gitea/workflows/build.yaml @@ -10,13 +10,9 @@ jobs: steps: - name: Trigger BuildKit Build run: | - echo "Building commit: \" - - # Delete old job kubectl delete job build-manoon-headless-action -n gitea --ignore-not-found=true 2>/dev/null || true - # Create build job - kubectl apply -f - << EOF + cat << 'JOBEOF' | kubectl apply -f - apiVersion: batch/v1 kind: Job metadata: @@ -30,33 +26,31 @@ jobs: initContainers: - name: clone image: alpine/git:latest - command: - - sh - - -c - - | - set -e - git clone --depth 1 http://gitea:3000/unchained/manoon-headless.git /workspace - cd /workspace && git checkout echo "Building: $(git rev-parse --short HEAD)" + command: ["sh", "-c"] + args: + - git clone --depth 1 http://gitea:3000/unchained/manoon-headless.git /workspace volumeMounts: - name: workspace mountPath: /workspace containers: - name: build image: moby/buildkit:latest - command: - - sh - - -c - - | - set -e - mkdir -p /root/.docker - cp /docker-config/.dockerconfigjson /root/.docker/config.json - buildctl --addr tcp://buildkit.gitea.svc.cluster.local:1234 build \ - --frontend dockerfile.v0 \ - --local context=/workspace \ - --local dockerfile=/workspace \ - --output type=image,name=ghcr.io/unchainedio/manoon-headless:latest,push=true - kubectl annotate kustomization -n flux-system manoonoils-storefront --overwrite reconcile.fluxcd.io/requestedAt="\1775369769" - echo "Done!" + command: ["sh", "-c"] + args: + - | + mkdir -p /root/.docker + cp /docker-config/.dockerconfigjson /root/.docker/config.json + buildctl --addr tcp://buildkit.gitea.svc.cluster.local:1234 build \ + --frontend dockerfile.v0 \ + --local context=/workspace \ + --local dockerfile=/workspace \ + --opt build-arg:NEXT_PUBLIC_SALEOR_API_URL=https://api.manoonoils.com/graphql/ \ + --opt build-arg:NEXT_PUBLIC_SITE_URL=https://manoonoils.com \ + --opt build-arg:NEXT_PUBLIC_OPENPANEL_CLIENT_ID=fa61f8ae-0b5d-4187-a9b1-5a04b0025674 \ + --opt build-arg:NEXT_PUBLIC_RYBBIT_HOST=https://rybbit.nodecrew.me \ + --opt build-arg:NEXT_PUBLIC_RYBBIT_SITE_ID=1 \ + --no-cache \ + --output type=image,name=ghcr.io/unchainedio/manoon-headless:latest,push=true volumeMounts: - name: workspace mountPath: /workspace @@ -69,7 +63,6 @@ jobs: - name: docker-config secret: secretName: ghcr-pull-secret - EOF + JOBEOF - echo "Build job created!" - kubectl wait --for=condition=complete job/build-manoon-headless-action -n gitea --timeout=600s || echo "Build running in background" + echo "Build triggered!" diff --git a/Dockerfile b/Dockerfile index 60f1c74..4110870 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,17 +1,25 @@ -# Multi-stage build for Next.js FROM node:20-slim AS builder WORKDIR /app -# Copy package files +ARG NEXT_PUBLIC_SALEOR_API_URL +ARG NEXT_PUBLIC_SITE_URL +ARG NEXT_PUBLIC_OPENPANEL_CLIENT_ID +ARG NEXT_PUBLIC_RYBBIT_HOST +ARG NEXT_PUBLIC_RYBBIT_SITE_ID + +ENV NEXT_PUBLIC_SALEOR_API_URL=${NEXT_PUBLIC_SALEOR_API_URL} +ENV NEXT_PUBLIC_SITE_URL=${NEXT_PUBLIC_SITE_URL} +ENV NEXT_PUBLIC_OPENPANEL_CLIENT_ID=${NEXT_PUBLIC_OPENPANEL_CLIENT_ID} +ENV NEXT_PUBLIC_RYBBIT_HOST=${NEXT_PUBLIC_RYBBIT_HOST} +ENV NEXT_PUBLIC_RYBBIT_SITE_ID=${NEXT_PUBLIC_RYBBIT_SITE_ID} + COPY package*.json ./ RUN npm install --prefer-offline --no-audit -# Copy source and build COPY . . RUN npm run build -# Production stage FROM node:20-slim AS runner WORKDIR /app @@ -20,7 +28,6 @@ ENV NODE_ENV=production ENV PORT=3000 ENV HOSTNAME=0.0.0.0 -# Copy necessary files from builder COPY --from=builder /app/public ./public COPY --from=builder /app/.next/standalone ./ COPY --from=builder /app/.next/static ./.next/static diff --git a/README.md b/README.md index 8cb5b6c..675d4ad 100644 --- a/README.md +++ b/README.md @@ -40,3 +40,5 @@ Check out our [Next.js deployment documentation](https://nextjs.org/docs/app/bui // Auto-deploy test: 2026-03-07T10:33:23Z // Auto-deploy test 2: 2026-03-07T10:37:05Z # Trigger build Sun Apr 5 06:32:05 AM EET 2026 +# Trigger build with env vars Sun Apr 5 08:45:00 AM EET 2026 +# Build test Sun Apr 5 12:59:49 PM EET 2026