Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
68 changes: 68 additions & 0 deletions .github/workflows/ci-build-check.yml
Original file line number Diff line number Diff line change
Expand Up @@ -38,12 +38,80 @@ jobs:
continue-on-error: false
env:
CI: true
# Database
MONGODB_URI: mongodb://localhost:27017/test-db

# JWT & Auth
JWT_SECRET: dd8a48e6f99d7b4c3b6a4c7e9587a2cc7f8b9e3a1d5f6g8h2j3k4m5n6p7q8r9t1u2v3w4x5y6z7-ci-test
ADMIN_JWT_SECRET: d8da04f2c803f88c68e38c47bad261223d01cc73e5f89d15e02bbf9f858f53b0f7220e5c23eb1f34ad355f821298d196-ci-test
M_KEY: e685b3de592422cdceff763ca3e784a2c792e4e7e5984cf0ea86544555612b80-ci-test

# Mock external services for testing
R2_ACCESS_KEY_ID: mock-r2-access-key-id
R2_SECRET_ACCESS_KEY: mock-r2-secret-access-key
R2_ACCOUNT_ID: mock-r2-account-id
R2_BUCKET_NAME: mock-test-bucket
R2_ENDPOINT: https://mock-endpoint.r2.cloudflarestorage.com

SENDGRID_API_KEY: SG.mock-sendgrid-api-key-for-testing-only
SENDGRID_FROM_EMAIL: test@example.com
DAILY_API_KEY: mock-daily-api-key-for-testing-only
GOOGLE_CLIENT_ID: mock-google-client-id
GOOGLE_CLIENT_SECRET: mock-google-client-secret
GEMINI_API_KEY: mock-gemini-api-key-for-testing-only
SYSTEM_API_KEY: mock-system-api-key-for-testing-only

# Test environment
NODE_ENV: test
NEXT_TELEMETRY_DISABLED: 1

- name: Build application
run: npm run build
continue-on-error: false
env:
CI: true
# Database
MONGODB_URI: mongodb://localhost:27017/test-db

# JWT & Auth - Make sure these are long enough and properly formatted
JWT_SECRET: dd8a48e6f99d7b4c3b6a4c7e9587a2cc7f8b9e3a1d5f6g8h2j3k4m5n6p7q8r9t1u2v3w4x5y6z7-ci-build
ADMIN_JWT_SECRET: d8da04f2c803f88c68e38c47bad261223d01cc73e5f89d15e02bbf9f858f53b0f7220e5c23eb1f34ad355f821298d196-ci-build
M_KEY: e685b3de592422cdceff763ca3e784a2c792e4e7e5984cf0ea86544555612b80-ci-build

# Cloudflare R2 Storage
R2_ACCESS_KEY_ID: mock-r2-access-key-id
R2_SECRET_ACCESS_KEY: mock-r2-secret-access-key
R2_ACCOUNT_ID: mock-r2-account-id
R2_BUCKET_NAME: mock-skillswaphub-bucket
R2_ENDPOINT: https://mock-endpoint.r2.cloudflarestorage.com

# Email Services
SENDGRID_API_KEY: SG.mock-sendgrid-api-key-for-ci-build-only
SENDGRID_FROM_EMAIL: test@example.com
MEETING_NOTI_MAIL: test@example.com
MEETING_NOTI_PW: mock-email-password

# Daily.co Video
DAILY_API_KEY: mock-daily-api-key-for-ci-build-only

# Google OAuth
GOOGLE_CLIENT_ID: mock-google-client-id.apps.googleusercontent.com
GOOGLE_CLIENT_SECRET: mock-google-client-secret
NEXT_PUBLIC_GOOGLE_CLIENT_ID: mock-google-client-id.apps.googleusercontent.com

# AI Service
GEMINI_API_KEY: mock-gemini-api-key-for-ci-build-only

# System API
SYSTEM_API_KEY: mock-system-api-key-for-ci-build-only

# Socket Connection
NEXT_PUBLIC_SOCKET: https://mock-socket-server.example.com/

# Build Configuration - Use 'ci' instead of 'production' to avoid production validations
NODE_ENV: ci
NEXT_TELEMETRY_DISABLED: 1
SKIP_DB_VALIDATION: true

- name: Check build output
run: |
Expand Down
Loading
Loading