cal/turbo.json
DmytroHryshyn 48e7b616b8
chore: [app dir bootstrapping 10] adds ab tests middleware (#12045)
## What does this PR do?
 - Adds AB tests middleware that redirects users to the app-dir pages with probability that is defined by env var
 
<!-- Please include a summary of the change and which issue is fixed. Please also include relevant motivation and context. List any dependencies that are required for this change. -->

Fixes # (issue)

<!-- Please provide a loom video for visual changes to speed up reviews
 Loom Video: https://www.loom.com/
-->

## Requirement/Documentation

<!-- Please provide all documents that are important to understand the reason of that PR. -->

This PR requires new env variables:
`APP_ROUTER_EVENT_TYPES_ENABLED`  - boolean that defines if app dir event-types page redirect is enabled
`AB_TEST_BUCKET_PROBABILITY` - number [0, 100] that defines the percentage of users getting redirected to the app dir pages

## Type of change

<!-- Please delete bullets that are not relevant. -->

- [ ] Bug fix (non-breaking change which fixes an issue)
- [x] Chore (refactoring code, technical debt, workflow improvements)
- [ ] New feature (non-breaking change which adds functionality)
- [ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
- [ ] This change requires a documentation update

## How should this be tested?

<!-- Please describe the tests that you ran to verify your changes. Provide instructions so we can reproduce. Please also list any relevant details for your test configuration. Write details that help to start the tests -->
Does not requires testing, implements middleware as a dead code

## Mandatory Tasks

- [x] Make sure you have self-reviewed the code. A decent size PR without self-review might be rejected.
2023-11-15 11:06:18 -07:00

335 lines
9.0 KiB
JSON

{
"$schema": "https://turborepo.org/schema.json",
"pipeline": {
"@calcom/prisma#build": {
"cache": false,
"dependsOn": ["post-install"]
},
"@calcom/prisma#db-migrate": {
"cache": false,
"dependsOn": ["@calcom/prisma#db-up"],
"inputs": ["./schema.prisma", "./migrations/**/*.sql"]
},
"@calcom/prisma#db-seed": {
"cache": false,
"dependsOn": ["@calcom/prisma#db-migrate"]
},
"@calcom/prisma#db-up": {
"cache": false
},
"@calcom/prisma#dx": {
"cache": false,
"dependsOn": ["@calcom/prisma#db-migrate"]
},
"@calcom/web#build": {
"dependsOn": ["^build"],
"outputs": [".next/**"],
"env": [
"NEXT_PUBLIC_AVAILABILITY_SCHEDULE_INTERVAL",
"NEXT_PUBLIC_IS_E2E",
"NEXT_PUBLIC_SENTRY_DSN",
"NEXT_PUBLIC_STRIPE_PREMIUM_PLAN_PRICE_MONTHLY",
"NEXT_PUBLIC_STRIPE_PREMIUM_PLAN_PRODUCT_ID",
"NEXT_PUBLIC_STRIPE_PUBLIC_KEY",
"NEXT_PUBLIC_STRIPE_TEAM_MONTHLY_PRICE_ID",
"NEXT_PUBLIC_WEBAPP_URL",
"NEXT_PUBLIC_WEBSITE_URL",
"STRIPE_PREMIUM_PLAN_PRODUCT_ID",
"STRIPE_TEAM_MONTHLY_PRICE_ID",
"STRIPE_ORG_MONTHLY_PRICE_ID"
]
},
"@calcom/web#dx": {
"cache": false,
"dependsOn": ["@calcom/prisma#dx"]
},
"@calcom/web#start": {
"cache": false,
"dependsOn": []
},
"@calcom/ai#build": {
"env": [
"FRONTEND_URL",
"BACKEND_URL",
"APP_ID",
"APP_URL",
"SENDER_DOMAIN",
"PARSE_KEY",
"NODE_ENV",
"OPENAI_API_KEY",
"SENDGRID_API_KEY",
"DATABASE_URL"
]
},
"@calcom/website#build": {
"dependsOn": ["^build"],
"outputs": [".next/**"],
"env": [
"CSP_POLICY",
"DATOCMS_API_TOKEN",
"DATOCMS_GRAPHQL_ENDPOINT",
"DATOCMS_WEBHOOK_SECRET",
"DATOCMS_PREVIEW_SECRET",
"ENVIRONMENT_URL",
"NEXT_PUBLIC_AVAILABILITY_SCHEDULE_INTERVAL",
"NEXT_PUBLIC_IS_PREMIUM_NEW_PLAN",
"NEXT_PUBLIC_STRIPE_FREE_PLAN_PRICE",
"NEXT_PUBLIC_STRIPE_PREMIUM_NEW_PLAN_PRICE",
"NEXT_PUBLIC_STRIPE_PREMIUM_PLAN_PRICE",
"NEXT_PUBLIC_STRIPE_PRO_PLAN_PRICE",
"NEXT_PUBLIC_STRIPE_PUBLIC_KEY",
"NEXT_PUBLIC_WEBAPP_URL",
"NEXT_PUBLIC_WEBSITE_URL",
"SENDGRID_VERIFICATION_KEY",
"STRIPE_FREE_PLAN_PRODUCT_ID",
"STRIPE_PREMIUM_PLAN_PRODUCT_ID",
"STRIPE_PRO_PLAN_PRODUCT_ID",
"STRIPE_SUPPORT_TABLE",
"MOTIFLAND_REST_ENDPOINT",
"MOTIFLAND_DOCS_API_KEY",
"MOTIFLAND_DOCS_PROJECT_ID"
]
},
"build": {
"dependsOn": ["^build"],
"outputs": ["dist/**", ".next/**"]
},
"db-deploy": {
"cache": false,
"inputs": ["./migrations/**/*.sql", "./prisma/migrations/**/*.sql"]
},
"db-seed": {},
"deploy": {
"cache": false,
"dependsOn": ["@calcom/web#build"]
},
"clean": {
"cache": false,
"outputs": ["dist/**", "build/**"]
},
"dev": {
"dependsOn": ["//#env-check:common", "//#env-check:app-store"],
"cache": false
},
"dx": {
"cache": false
},
"lint": {
"cache": false
},
"lint:fix": {
"cache": false
},
"lint:report": {
"cache": false,
"outputs": ["lint-results"]
},
"post-install": {
"dependsOn": [],
"outputs": ["../../node_modules/@prisma/client/**", "../../node_modules/@prisma/admin-client/**"],
"inputs": ["./schema.prisma", "./prisma/schema.prisma"],
"env": ["PRISMA_GENERATE_DATAPROXY"]
},
"@calcom/prisma#post-install": {
"cache": false,
"outputs": ["dist/**", "build/**"]
},
"start": {
"outputs": ["dist/**", "build/**"]
},
"embed-tests": {
"cache": false,
"outputs": ["dist/**", "build/**"]
},
"embed-tests-quick": {
"cache": false,
"outputs": ["dist/**", "build/**"]
},
"type-check": {
"cache": false
},
"type-check:ci": {
"cache": false
},
"@calcom/prisma#db-reset": {
"cache": false,
"outputs": ["dist/**", "build/**"]
},
"@calcom/app-store-cli#build": {
"cache": false,
"inputs": ["../../app-store/**/**"],
"outputs": ["../../app-store/apps.server.generated.ts", "../../app-store/apps.browser.generated.tsx"]
},
"@calcom/embed-react#type-check": {
"dependsOn": ["@calcom/embed-core#build", "@calcom/embed-snippet#build"],
"outputs": ["dist/**", "build/**"]
},
"@calcom/embed-core#build": {
"cache": false,
"outputs": ["../../../apps/web/public/embed/**"]
},
"embed-tests-update-snapshots:ci": {
"cache": false,
"dependsOn": [
"@calcom/prisma#db-seed",
"@calcom/web#build",
"^build",
"^embed-tests-update-snapshots:ci"
],
"outputs": ["dist/**", "build/**"]
},
"//#env-check:common": {
"cache": false,
"inputs": ["./.env.example", "./.env"],
"outputs": ["./.env"]
},
"//#env-check:app-store": {
"cache": false,
"inputs": ["./.env.appStore.example", "./.env.appStore"],
"outputs": ["./.env.appStore"]
},
"//#test": {
"cache": false
}
},
"globalDependencies": ["yarn.lock"],
"globalEnv": [
"AB_TEST_BUCKET_PROBABILITY",
"ALLOWED_HOSTNAMES",
"ANALYZE",
"API_KEY_PREFIX",
"APP_ROUTER_EVENT_TYPES_ENABLED",
"APP_USER_NAME",
"BASECAMP3_CLIENT_ID",
"BASECAMP3_CLIENT_SECRET",
"BASECAMP3_USER_AGENT",
"AUTH_BEARER_TOKEN_VERCEL",
"BUILD_ID",
"CALCOM_APP_CREDENTIAL_ENCRYPTION_KEY",
"CALCOM_CREDENTIAL_SYNC_ENDPOINT",
"CALCOM_ENV",
"CALCOM_LICENSE_KEY",
"CALCOM_TELEMETRY_DISABLED",
"CALCOM_WEBHOOK_HEADER_NAME",
"CALENDSO_ENCRYPTION_KEY",
"CALCOM_WEBHOOK_SECRET",
"CI",
"CLOSECOM_API_KEY",
"CRON_API_KEY",
"CRON_ENABLE_APP_SYNC",
"DAILY_API_KEY",
"DAILY_SCALE_PLAN",
"DEBUG",
"E2E_TEST_APPLE_CALENDAR_EMAIL",
"E2E_TEST_APPLE_CALENDAR_PASSWORD",
"E2E_TEST_MAILHOG_ENABLED",
"E2E_TEST_OIDC_CLIENT_ID",
"E2E_TEST_OIDC_CLIENT_SECRET",
"E2E_TEST_OIDC_PROVIDER_DOMAIN",
"E2E_TEST_OIDC_USER_EMAIL",
"E2E_TEST_OIDC_USER_PASSWORD",
"E2E_TEST_SAML_ADMIN_EMAIL",
"E2E_TEST_SAML_ADMIN_PASSWORD",
"EMAIL_FROM",
"EMAIL_SERVER_HOST",
"EMAIL_SERVER_PASSWORD",
"EMAIL_SERVER_PORT",
"EMAIL_SERVER_USER",
"EMAIL_SERVER",
"EXCHANGE_DEFAULT_EWS_URL",
"GIPHY_API_KEY",
"GITHUB_API_REPO_TOKEN",
"GOOGLE_API_CREDENTIALS",
"GOOGLE_LOGIN_ENABLED",
"HEROKU_APP_NAME",
"HUBSPOT_CLIENT_ID",
"HUBSPOT_CLIENT_SECRET",
"INTEGRATION_TEST_MODE",
"INTERCOM_SECRET",
"INTERCOM_SECRET",
"IP_BANLIST",
"LARK_OPEN_APP_ID",
"LARK_OPEN_APP_SECRET",
"LARK_OPEN_VERIFICATION_TOKEN",
"MS_GRAPH_CLIENT_ID",
"MS_GRAPH_CLIENT_SECRET",
"NEXT_PUBLIC_API_URL",
"NEXT_PUBLIC_APP_NAME",
"NEXT_PUBLIC_AUTH_URL",
"NEXT_PUBLIC_CALCOM_VERSION",
"NEXT_PUBLIC_COMPANY_NAME",
"NEXT_PUBLIC_CONSOLE_URL",
"NEXT_PUBLIC_DEBUG",
"NEXT_PUBLIC_DISABLE_SIGNUP",
"NEXT_PUBLIC_EMBED_LIB_URL",
"NEXT_PUBLIC_HOSTED_CAL_FEATURES",
"NEXT_PUBLIC_MINUTES_TO_BOOK",
"NEXT_PUBLIC_SENDER_ID",
"NEXT_PUBLIC_SENDGRID_SENDER_NAME",
"NEXT_PUBLIC_STRIPE_PRICING_TABLE_ID",
"NEXT_PUBLIC_STRIPE_PRICING_TABLE_PUBLISHABLE_KEY",
"NEXT_PUBLIC_SUPPORT_MAIL_ADDRESS",
"NEXT_PUBLIC_SWAGGER_DOCS_URL",
"NEXT_PUBLIC_TEAM_IMPERSONATION",
"NEXT_PUBLIC_VERCEL_URL",
"NEXTAUTH_COOKIE_DOMAIN",
"NEXTAUTH_SECRET",
"NEXTAUTH_URL",
"NODE_ENV",
"ORGANIZATIONS_ENABLED",
"ORGANIZATIONS_AUTOLINK",
"PAYMENT_FEE_FIXED",
"PAYMENT_FEE_PERCENTAGE",
"PLAYWRIGHT_HEADLESS",
"PLAYWRIGHT_TEST_BASE_URL",
"PRISMA_FIELD_ENCRYPTION_KEY",
"PRISMA_GENERATE_DATAPROXY",
"PROJECT_ID_VERCEL",
"QUICK",
"RAILWAY_STATIC_URL",
"RENDER_EXTERNAL_URL",
"RESERVED_SUBDOMAINS",
"SALESFORCE_CONSUMER_KEY",
"SALESFORCE_CONSUMER_SECRET",
"SAML_ADMINS",
"SAML_CLIENT_SECRET_VERIFIER",
"SAML_DATABASE_URL",
"SEND_FEEDBACK_EMAIL",
"SENDGRID_API_KEY",
"SENDGRID_EMAIL",
"SENDGRID_SYNC_API_KEY",
"SLACK_CLIENT_ID",
"SLACK_CLIENT_SECRET",
"SLACK_SIGNING_SECRET",
"STRIPE_CLIENT_ID",
"STRIPE_PRIVATE_KEY",
"STRIPE_PRODUCT_ID_ESSENTIALS",
"STRIPE_PRODUCT_ID_SCALE",
"STRIPE_PRODUCT_ID_STARTER",
"STRIPE_WEBHOOK_SECRET",
"TANDEM_BASE_URL",
"TANDEM_CLIENT_ID",
"TANDEM_CLIENT_SECRET",
"TEAM_ID_VERCEL",
"TELEMETRY_DEBUG",
"TWILIO_MESSAGING_SID",
"TWILIO_PHONE_NUMBER",
"TWILIO_SID",
"TWILIO_TOKEN",
"TWILIO_VERIFY_SID",
"UPSTASH_REDIS_REST_TOKEN",
"UPSTASH_REDIS_REST_URL",
"VERCEL_ENV",
"VERCEL_URL",
"VITAL_API_KEY",
"VITAL_DEVELOPMENT_MODE",
"VITAL_REGION",
"VITAL_WEBHOOK_SECRET",
"ZAPIER_INVITE_LINK",
"ZOHOCRM_CLIENT_ID",
"ZOHOCRM_CLIENT_SECRET",
"ZOOM_CLIENT_ID",
"ZOOM_CLIENT_SECRET"
]
}