From 2f9c2957c587e974b90d91a22c2a77b63c035269 Mon Sep 17 00:00:00 2001 From: waleedlatif1 Date: Sat, 6 Sep 2025 13:27:40 -0700 Subject: [PATCH 1/3] update infra and remove railway --- .github/workflows/build.yml | 39 ++++++++++++++++++++++++++++++++----- .github/workflows/ci.yml | 22 --------------------- railway.json | 21 -------------------- 3 files changed, 34 insertions(+), 48 deletions(-) delete mode 100644 railway.json diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 30d2eb26083..518add6b144 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -55,7 +55,7 @@ jobs: uses: docker/setup-buildx-action@v3 - name: Log in to the Container registry - if: github.event_name != 'pull_request' && github.ref == 'refs/heads/main' + if: github.event_name != 'pull_request' && (github.ref == 'refs/heads/main' || github.ref == 'refs/heads/staging') uses: docker/login-action@v3 with: registry: ghcr.io @@ -69,7 +69,7 @@ jobs: images: ${{ matrix.image }} tags: | type=raw,value=latest-${{ matrix.arch }},enable=${{ github.ref == 'refs/heads/main' }} - type=raw,value=staging-${{ github.sha }}-${{ matrix.arch }},enable=${{ github.ref == 'refs/heads/staging' }} + type=raw,value=staging-${{ matrix.arch }},enable=${{ github.ref == 'refs/heads/staging' }} type=sha,format=long,suffix=-${{ matrix.arch }} - name: Build and push Docker image @@ -78,7 +78,7 @@ jobs: context: . file: ${{ matrix.dockerfile }} platforms: ${{ matrix.platform }} - push: ${{ github.event_name != 'pull_request' && github.ref == 'refs/heads/main' }} + push: ${{ github.event_name != 'pull_request' && (github.ref == 'refs/heads/main' || github.ref == 'refs/heads/staging') }} tags: ${{ steps.meta.outputs.tags }} labels: ${{ steps.meta.outputs.labels }} cache-from: type=gha,scope=build-v3 @@ -89,7 +89,7 @@ jobs: create-manifests: runs-on: ubuntu-latest needs: build-and-push - if: github.event_name != 'pull_request' && github.ref == 'refs/heads/main' + if: github.event_name != 'pull_request' && (github.ref == 'refs/heads/main' || github.ref == 'refs/heads/staging') strategy: matrix: include: @@ -115,6 +115,7 @@ jobs: images: ${{ matrix.image }} tags: | type=raw,value=latest,enable=${{ github.ref == 'refs/heads/main' }} + type=raw,value=staging,enable=${{ github.ref == 'refs/heads/staging' }} type=sha,format=long - name: Create and push manifest @@ -148,4 +149,32 @@ jobs: docker manifest inspect "$arm64_image" || echo "ARM64 image not found" exit 1 fi - done \ No newline at end of file + done + + trigger-infrastructure-deploy: + runs-on: ubuntu-latest + needs: create-manifests + if: github.ref == 'refs/heads/staging' || github.ref == 'refs/heads/main' + permissions: + contents: read + + steps: + - name: Trigger staging deployment + if: github.ref == 'refs/heads/staging' + run: | + curl -X POST \ + -H "Accept: application/vnd.github.v3+json" \ + -H "Authorization: token ${{ secrets.INFRA_DEPLOY_TOKEN }}" \ + -H "X-GitHub-Api-Version: 2022-11-28" \ + https://api.github.com/repos/${{ secrets.INFRA_REPO }}/dispatches \ + -d '{"event_type":"staging-deploy","client_payload":{"sha":"${{ github.sha }}","ref":"${{ github.ref }}"}}' + + - name: Trigger production deployment + if: github.ref == 'refs/heads/main' + run: | + curl -X POST \ + -H "Accept: application/vnd.github.v3+json" \ + -H "Authorization: token ${{ secrets.INFRA_DEPLOY_TOKEN }}" \ + -H "X-GitHub-Api-Version: 2022-11-28" \ + https://api.github.com/repos/${{ secrets.INFRA_REPO }}/dispatches \ + -d '{"event_type":"production-deploy","client_payload":{"sha":"${{ github.sha }}","ref":"${{ github.ref }}"}}' \ No newline at end of file diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index ffd68d8b87b..0f64e4f960b 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -53,25 +53,3 @@ jobs: fail_ci_if_error: false verbose: true - migrations: - name: Apply Database Migrations - runs-on: ubuntu-latest - if: github.event_name == 'push' && (github.ref == 'refs/heads/main' || github.ref == 'refs/heads/staging') - needs: test - steps: - - name: Checkout code - uses: actions/checkout@v4 - - - name: Setup Bun - uses: oven-sh/setup-bun@v2 - with: - bun-version: latest - - - name: Install dependencies - run: bun install - - - name: Apply migrations - working-directory: ./apps/sim - env: - DATABASE_URL: ${{ github.ref == 'refs/heads/main' && secrets.DATABASE_URL || secrets.STAGING_DATABASE_URL }} - run: bunx drizzle-kit migrate diff --git a/railway.json b/railway.json deleted file mode 100644 index 62d6da767e5..00000000000 --- a/railway.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "$schema": "https://railway.app/railway.schema.json", - "build": { - "builder": "NIXPACKS", - "buildCommand": "cd apps/sim && bun install --frozen-lockfile && bun run build" - }, - "deploy": { - "startCommand": "cd apps/sim && NODE_ENV=production bun run socket-server/index.ts", - "healthcheckPath": "/health", - "healthcheckTimeout": 300, - "restartPolicyType": "ON_FAILURE", - "restartPolicyMaxRetries": 10 - }, - "environments": { - "production": { - "variables": { - "NODE_ENV": "production" - } - } - } -} From 8dcd346d077b9128be8155f5dfe3f9a71a6403ae Mon Sep 17 00:00:00 2001 From: waleedlatif1 Date: Thu, 11 Sep 2025 14:11:49 -0700 Subject: [PATCH 2/3] fix(file-upload): fix nextjs file upload issue with pdf-parse --- .../components/sub-block/components/file-upload.tsx | 2 +- apps/sim/next.config.ts | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/apps/sim/app/workspace/[workspaceId]/w/[workflowId]/components/workflow-block/components/sub-block/components/file-upload.tsx b/apps/sim/app/workspace/[workspaceId]/w/[workflowId]/components/workflow-block/components/sub-block/components/file-upload.tsx index 15a15768b7c..f31bf6ac859 100644 --- a/apps/sim/app/workspace/[workspaceId]/w/[workflowId]/components/workflow-block/components/sub-block/components/file-upload.tsx +++ b/apps/sim/app/workspace/[workspaceId]/w/[workflowId]/components/workflow-block/components/sub-block/components/file-upload.tsx @@ -536,7 +536,7 @@ export function FileUpload({
{uploadProgress < 100 ? 'Uploading...' : 'Upload complete!'} diff --git a/apps/sim/next.config.ts b/apps/sim/next.config.ts index 22b3106ae36..91c38642d01 100644 --- a/apps/sim/next.config.ts +++ b/apps/sim/next.config.ts @@ -55,6 +55,7 @@ const nextConfig: NextConfig = { turbopack: { resolveExtensions: ['.tsx', '.ts', '.jsx', '.js', '.mjs', '.json'], }, + serverExternalPackages: ['pdf-parse'], experimental: { optimizeCss: true, turbopackSourceMaps: false, From 9c784a319d4b0a4729d68ceaa6bd010c53f42a66 Mon Sep 17 00:00:00 2001 From: waleedlatif1 Date: Thu, 11 Sep 2025 14:12:38 -0700 Subject: [PATCH 3/3] Revert "update infra and remove railway" This reverts commit b23258a5a128b47956d6f7f4622e1e736dc2332f. --- .github/workflows/build.yml | 39 +++++-------------------------------- .github/workflows/ci.yml | 22 +++++++++++++++++++++ railway.json | 21 ++++++++++++++++++++ 3 files changed, 48 insertions(+), 34 deletions(-) create mode 100644 railway.json diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 518add6b144..30d2eb26083 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -55,7 +55,7 @@ jobs: uses: docker/setup-buildx-action@v3 - name: Log in to the Container registry - if: github.event_name != 'pull_request' && (github.ref == 'refs/heads/main' || github.ref == 'refs/heads/staging') + if: github.event_name != 'pull_request' && github.ref == 'refs/heads/main' uses: docker/login-action@v3 with: registry: ghcr.io @@ -69,7 +69,7 @@ jobs: images: ${{ matrix.image }} tags: | type=raw,value=latest-${{ matrix.arch }},enable=${{ github.ref == 'refs/heads/main' }} - type=raw,value=staging-${{ matrix.arch }},enable=${{ github.ref == 'refs/heads/staging' }} + type=raw,value=staging-${{ github.sha }}-${{ matrix.arch }},enable=${{ github.ref == 'refs/heads/staging' }} type=sha,format=long,suffix=-${{ matrix.arch }} - name: Build and push Docker image @@ -78,7 +78,7 @@ jobs: context: . file: ${{ matrix.dockerfile }} platforms: ${{ matrix.platform }} - push: ${{ github.event_name != 'pull_request' && (github.ref == 'refs/heads/main' || github.ref == 'refs/heads/staging') }} + push: ${{ github.event_name != 'pull_request' && github.ref == 'refs/heads/main' }} tags: ${{ steps.meta.outputs.tags }} labels: ${{ steps.meta.outputs.labels }} cache-from: type=gha,scope=build-v3 @@ -89,7 +89,7 @@ jobs: create-manifests: runs-on: ubuntu-latest needs: build-and-push - if: github.event_name != 'pull_request' && (github.ref == 'refs/heads/main' || github.ref == 'refs/heads/staging') + if: github.event_name != 'pull_request' && github.ref == 'refs/heads/main' strategy: matrix: include: @@ -115,7 +115,6 @@ jobs: images: ${{ matrix.image }} tags: | type=raw,value=latest,enable=${{ github.ref == 'refs/heads/main' }} - type=raw,value=staging,enable=${{ github.ref == 'refs/heads/staging' }} type=sha,format=long - name: Create and push manifest @@ -149,32 +148,4 @@ jobs: docker manifest inspect "$arm64_image" || echo "ARM64 image not found" exit 1 fi - done - - trigger-infrastructure-deploy: - runs-on: ubuntu-latest - needs: create-manifests - if: github.ref == 'refs/heads/staging' || github.ref == 'refs/heads/main' - permissions: - contents: read - - steps: - - name: Trigger staging deployment - if: github.ref == 'refs/heads/staging' - run: | - curl -X POST \ - -H "Accept: application/vnd.github.v3+json" \ - -H "Authorization: token ${{ secrets.INFRA_DEPLOY_TOKEN }}" \ - -H "X-GitHub-Api-Version: 2022-11-28" \ - https://api.github.com/repos/${{ secrets.INFRA_REPO }}/dispatches \ - -d '{"event_type":"staging-deploy","client_payload":{"sha":"${{ github.sha }}","ref":"${{ github.ref }}"}}' - - - name: Trigger production deployment - if: github.ref == 'refs/heads/main' - run: | - curl -X POST \ - -H "Accept: application/vnd.github.v3+json" \ - -H "Authorization: token ${{ secrets.INFRA_DEPLOY_TOKEN }}" \ - -H "X-GitHub-Api-Version: 2022-11-28" \ - https://api.github.com/repos/${{ secrets.INFRA_REPO }}/dispatches \ - -d '{"event_type":"production-deploy","client_payload":{"sha":"${{ github.sha }}","ref":"${{ github.ref }}"}}' \ No newline at end of file + done \ No newline at end of file diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 0f64e4f960b..ffd68d8b87b 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -53,3 +53,25 @@ jobs: fail_ci_if_error: false verbose: true + migrations: + name: Apply Database Migrations + runs-on: ubuntu-latest + if: github.event_name == 'push' && (github.ref == 'refs/heads/main' || github.ref == 'refs/heads/staging') + needs: test + steps: + - name: Checkout code + uses: actions/checkout@v4 + + - name: Setup Bun + uses: oven-sh/setup-bun@v2 + with: + bun-version: latest + + - name: Install dependencies + run: bun install + + - name: Apply migrations + working-directory: ./apps/sim + env: + DATABASE_URL: ${{ github.ref == 'refs/heads/main' && secrets.DATABASE_URL || secrets.STAGING_DATABASE_URL }} + run: bunx drizzle-kit migrate diff --git a/railway.json b/railway.json new file mode 100644 index 00000000000..62d6da767e5 --- /dev/null +++ b/railway.json @@ -0,0 +1,21 @@ +{ + "$schema": "https://railway.app/railway.schema.json", + "build": { + "builder": "NIXPACKS", + "buildCommand": "cd apps/sim && bun install --frozen-lockfile && bun run build" + }, + "deploy": { + "startCommand": "cd apps/sim && NODE_ENV=production bun run socket-server/index.ts", + "healthcheckPath": "/health", + "healthcheckTimeout": 300, + "restartPolicyType": "ON_FAILURE", + "restartPolicyMaxRetries": 10 + }, + "environments": { + "production": { + "variables": { + "NODE_ENV": "production" + } + } + } +}