349 lines
11 KiB
JSON
349 lines
11 KiB
JSON
{
|
|
"$schema": "https://app.flightcontrol.dev/schema.json",
|
|
"environments": [
|
|
{
|
|
"id": "prod",
|
|
"name": "Prod",
|
|
"region": "us-east-1",
|
|
"source": {
|
|
"branch": "main",
|
|
"trigger": "push"
|
|
},
|
|
"envVariables": {
|
|
"PULSAR_ISSUER_URL": "https://auth.streamnative.cloud/",
|
|
"PULSAR_AUDIENCE": {
|
|
"fromParameterStore": "/Prod/Pulsar/Audience"
|
|
},
|
|
"PULSAR_TENANT": "triggerdotdev",
|
|
"PULSAR_WORKFLOWS_NAMESPACE": "workflows",
|
|
"PULSAR_QUEUES_NAMESPACE": "queues",
|
|
"PULSAR_SERVICE_URL": {
|
|
"fromParameterStore": "/Prod/Pulsar/ServiceURL"
|
|
},
|
|
"DOCKER_USERNAME": "maverickdotdev",
|
|
"DOCKER_PASSWORD": {
|
|
"fromParameterStore": "/Docker/Password"
|
|
}
|
|
},
|
|
"services": [
|
|
{
|
|
"id": "p-webapp",
|
|
"name": "Prod Webapp",
|
|
"type": "fargate",
|
|
"buildType": "docker",
|
|
"dockerfilePath": "./apps/webapp/Dockerfile",
|
|
"dockerContext": ".",
|
|
"cpu": 4,
|
|
"memory": 8,
|
|
"minInstances": 1,
|
|
"maxInstances": 10,
|
|
"domain": "app.trigger.dev",
|
|
"port": 3000,
|
|
"healthCheckPath": "/healthcheck",
|
|
"watchPaths": [
|
|
"apps/webapp/app/**",
|
|
"apps/webapp/public/**",
|
|
"apps/webapp/Dockerfile",
|
|
"apps/webapp/package.json",
|
|
"apps/webapp/server.ts",
|
|
"apps/webapp/remix.config.js",
|
|
"apps/webapp/tailwind.config.js",
|
|
"apps/webapp/tsconfig.json",
|
|
"apps/webapp/postcss.config.js",
|
|
"apps/webapp/styles/**",
|
|
"apps/webapp/prisma/**",
|
|
"apps/webapp/types/**",
|
|
"packages/internal-platform/src/**",
|
|
"packages/common-schemas/src/**",
|
|
"packages/internal-integrations/src/**",
|
|
"packages/trigger-providers/src/**",
|
|
"packages/emails/src/**",
|
|
"packages/emails/emails/**",
|
|
"packages/internal-pulsar/src/**",
|
|
"./pnpm-lock.yaml"
|
|
],
|
|
"dependsOn": [
|
|
"p-db"
|
|
],
|
|
"envVariables": {
|
|
"FROM_EMAIL": "hello@email.trigger.dev",
|
|
"REPLY_TO_EMAIL": "hello@trigger.dev",
|
|
"RESEND_API_KEY": {
|
|
"fromParameterStore": "/Prod/webapp/RESEND_API_KEY"
|
|
},
|
|
"SENTRY_DSN": {
|
|
"fromParameterStore": "SENTRY_DSN"
|
|
},
|
|
"SESSION_SECRET": {
|
|
"fromParameterStore": "/Prod/webapp/SESSION_SECRET"
|
|
},
|
|
"MAGIC_LINK_SECRET": {
|
|
"fromParameterStore": "/Prod/webapp/MAGIC_LINK_SECRET"
|
|
},
|
|
"GITHUB_CLIENT_ID": "724e56fcebe940eb5b22",
|
|
"GITHUB_SECRET": {
|
|
"fromParameterStore": "/Prod/webapp/GITHUB_SECRET"
|
|
},
|
|
"DATABASE_URL": {
|
|
"fromService": {
|
|
"id": "p-db",
|
|
"value": "dbConnectionString"
|
|
}
|
|
},
|
|
"PULSAR_CLIENT_ID": {
|
|
"fromParameterStore": "/Prod/Pulsar/webapp/ClientId"
|
|
},
|
|
"PULSAR_CLIENT_SECRET": {
|
|
"fromParameterStore": "/Prod/Pulsar/webapp/ClientSecret"
|
|
},
|
|
"PULSAR_ROLE": {
|
|
"fromParameterStore": "/Prod/Pulsar/webapp/Role"
|
|
},
|
|
"PIZZLY_HOST": "https://auth.trigger.dev",
|
|
"PIZZLY_SECRET_KEY": {
|
|
"fromParameterStore": "/Prod/webapp/PIZZLY_SECRET_KEY"
|
|
},
|
|
"TRIGGER_LOG_LEVEL": "debug",
|
|
"PULSAR_ENABLED": "1",
|
|
"PULSAR_DEBUG": true
|
|
}
|
|
},
|
|
{
|
|
"id": "p-wss",
|
|
"name": "Prod WSS",
|
|
"type": "fargate",
|
|
"buildType": "docker",
|
|
"dockerfilePath": "./apps/wss/Dockerfile",
|
|
"dockerContext": ".",
|
|
"cpu": 2,
|
|
"memory": 4,
|
|
"minInstances": 2,
|
|
"maxInstances": 10,
|
|
"domain": "wss.trigger.dev",
|
|
"port": 8889,
|
|
"healthCheckPath": "/healthcheck",
|
|
"watchPaths": [
|
|
"apps/wss/src/**",
|
|
"apps/wss/tsconfig.json",
|
|
"apps/wss/tsup.config.ts",
|
|
"apps/wss/package.json",
|
|
"packages/internal-platform/src/**",
|
|
"packages/internal-bridge/src/**",
|
|
"packages/common-schemas/src/**",
|
|
"packages/internal-pulsar/src/**",
|
|
"./pnpm-lock.yaml"
|
|
],
|
|
"envVariables": {
|
|
"PULSAR_CLIENT_ID": {
|
|
"fromParameterStore": "/Prod/Pulsar/wss/ClientId"
|
|
},
|
|
"PULSAR_CLIENT_SECRET": {
|
|
"fromParameterStore": "/Prod/Pulsar/wss/ClientSecret"
|
|
},
|
|
"PULSAR_ROLE": {
|
|
"fromParameterStore": "/Prod/Pulsar/wss/Role"
|
|
},
|
|
"PLATFORM_API_URL": "https://app.trigger.dev",
|
|
"TRIGGER_LOG_LEVEL": "debug"
|
|
}
|
|
},
|
|
{
|
|
"id": "p-db",
|
|
"name": "Prod Database",
|
|
"type": "rds",
|
|
"engine": "postgres",
|
|
"applyChangesImmediately": true,
|
|
"engineVersion": "14",
|
|
"autoUpgradeMinorVersions": true,
|
|
"instanceSize": "db.m5.2xlarge",
|
|
"storage": 4000,
|
|
"maxStorage": 4000,
|
|
"private": false,
|
|
"deletionProtection": true,
|
|
"port": 5432
|
|
},
|
|
{
|
|
"id": "p-redis",
|
|
"name": "Prod Redis",
|
|
"type": "elasticache",
|
|
"engine": "redis",
|
|
"engineVersion": "7.0",
|
|
"instanceSize": "cache.m5.large",
|
|
"connectionStringEnvVarName": "REDIS_URL"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"id": "staging",
|
|
"name": "Staging",
|
|
"region": "us-east-1",
|
|
"source": {
|
|
"branch": "dev",
|
|
"trigger": "manual"
|
|
},
|
|
"envVariables": {
|
|
"PULSAR_ISSUER_URL": "https://auth.streamnative.cloud/",
|
|
"PULSAR_AUDIENCE": {
|
|
"fromParameterStore": "/Staging/Pulsar/Audience"
|
|
},
|
|
"PULSAR_TENANT": "triggerdotdev",
|
|
"PULSAR_WORKFLOWS_NAMESPACE": "workflows",
|
|
"PULSAR_QUEUES_NAMESPACE": "queues",
|
|
"PULSAR_SERVICE_URL": {
|
|
"fromParameterStore": "/Staging/Pulsar/ServiceURL"
|
|
},
|
|
"DOCKER_USERNAME": "maverickdotdev",
|
|
"DOCKER_PASSWORD": {
|
|
"fromParameterStore": "/Docker/Password"
|
|
}
|
|
},
|
|
"services": [
|
|
{
|
|
"id": "s-webapp",
|
|
"name": "Staging Webapp",
|
|
"type": "fargate",
|
|
"buildType": "docker",
|
|
"dockerfilePath": "./apps/webapp/Dockerfile",
|
|
"dockerContext": ".",
|
|
"cpu": 0.5,
|
|
"memory": 2,
|
|
"minInstances": 1,
|
|
"maxInstances": 2,
|
|
"domain": "app-staging.trigger.dev",
|
|
"port": 3000,
|
|
"healthCheckPath": "/healthcheck",
|
|
"watchPaths": [
|
|
"apps/webapp/app/**",
|
|
"apps/webapp/public/**",
|
|
"apps/webapp/Dockerfile",
|
|
"apps/webapp/package.json",
|
|
"apps/webapp/server.ts",
|
|
"apps/webapp/remix.config.js",
|
|
"apps/webapp/tailwind.config.js",
|
|
"apps/webapp/tsconfig.json",
|
|
"apps/webapp/postcss.config.js",
|
|
"apps/webapp/styles/**",
|
|
"apps/webapp/prisma/**",
|
|
"apps/webapp/types/**",
|
|
"packages/internal-platform/src/**",
|
|
"packages/common-schemas/src/**",
|
|
"packages/internal-integrations/src/**",
|
|
"packages/trigger-providers/src/**",
|
|
"packages/emails/src/**",
|
|
"packages/emails/emails/**",
|
|
"packages/internal-pulsar/src/**",
|
|
"./pnpm-lock.yaml"
|
|
],
|
|
"dependsOn": [
|
|
"s-db"
|
|
],
|
|
"envVariables": {
|
|
"FROM_EMAIL": "hello@email.trigger.dev",
|
|
"REPLY_TO_EMAIL": "hello@trigger.dev",
|
|
"RESEND_API_KEY": {
|
|
"fromParameterStore": "/Staging/webapp/RESEND_API_KEY"
|
|
},
|
|
"SENTRY_DSN": {
|
|
"fromParameterStore": "SENTRY_DSN"
|
|
},
|
|
"SESSION_SECRET": {
|
|
"fromParameterStore": "/Staging/webapp/SESSION_SECRET"
|
|
},
|
|
"MAGIC_LINK_SECRET": {
|
|
"fromParameterStore": "/Staging/webapp/MAGIC_LINK_SECRET"
|
|
},
|
|
"GITHUB_CLIENT_ID": "724e56fcebe940eb5b22",
|
|
"GITHUB_SECRET": {
|
|
"fromParameterStore": "/Staging/webapp/GITHUB_SECRET"
|
|
},
|
|
"DATABASE_URL": {
|
|
"fromService": {
|
|
"id": "s-db",
|
|
"value": "dbConnectionString"
|
|
}
|
|
},
|
|
"PULSAR_CLIENT_ID": {
|
|
"fromParameterStore": "/Staging/Pulsar/webapp/ClientId"
|
|
},
|
|
"PULSAR_CLIENT_SECRET": {
|
|
"fromParameterStore": "/Staging/Pulsar/webapp/ClientSecret"
|
|
},
|
|
"PULSAR_ROLE": {
|
|
"fromParameterStore": "/Staging/Pulsar/webapp/Role"
|
|
},
|
|
"PIZZLY_HOST": "https://staging-auth.trigger.dev",
|
|
"PIZZLY_SECRET_KEY": {
|
|
"fromParameterStore": "/Staging/webapp/PIZZLY_SECRET_KEY"
|
|
},
|
|
"TRIGGER_LOG_LEVEL": "debug",
|
|
"PULSAR_ENABLED": "1",
|
|
"PULSAR_DEBUG": true
|
|
}
|
|
},
|
|
{
|
|
"id": "s-wss",
|
|
"name": "Staging WSS",
|
|
"type": "fargate",
|
|
"buildType": "docker",
|
|
"dockerfilePath": "./apps/wss/Dockerfile",
|
|
"dockerContext": ".",
|
|
"cpu": 1,
|
|
"memory": 2,
|
|
"minInstances": 1,
|
|
"maxInstances": 2,
|
|
"domain": "wss-staging.trigger.dev",
|
|
"port": 8889,
|
|
"healthCheckPath": "/healthcheck",
|
|
"watchPaths": [
|
|
"apps/wss/src/**",
|
|
"apps/wss/tsconfig.json",
|
|
"apps/wss/tsup.config.ts",
|
|
"apps/wss/package.json",
|
|
"packages/internal-platform/src/**",
|
|
"packages/internal-bridge/src/**",
|
|
"packages/common-schemas/src/**",
|
|
"packages/internal-pulsar/src/**",
|
|
"./pnpm-lock.yaml"
|
|
],
|
|
"envVariables": {
|
|
"PULSAR_CLIENT_ID": {
|
|
"fromParameterStore": "/Staging/Pulsar/wss/ClientId"
|
|
},
|
|
"PULSAR_CLIENT_SECRET": {
|
|
"fromParameterStore": "/Staging/Pulsar/wss/ClientSecret"
|
|
},
|
|
"PULSAR_ROLE": {
|
|
"fromParameterStore": "/Staging/Pulsar/wss/Role"
|
|
},
|
|
"PLATFORM_API_URL": "https://app.trigger.dev",
|
|
"TRIGGER_LOG_LEVEL": "debug"
|
|
}
|
|
},
|
|
{
|
|
"id": "s-db",
|
|
"name": "Staging Database",
|
|
"type": "rds",
|
|
"engine": "postgres",
|
|
"applyChangesImmediately": true,
|
|
"engineVersion": "14",
|
|
"autoUpgradeMinorVersions": true,
|
|
"instanceSize": "db.t3.large",
|
|
"storage": 100,
|
|
"maxStorage": 400,
|
|
"private": false,
|
|
"deletionProtection": true,
|
|
"port": 5432
|
|
},
|
|
{
|
|
"id": "s-redis",
|
|
"name": "Staging Redis",
|
|
"type": "elasticache",
|
|
"engine": "redis",
|
|
"engineVersion": "7.0",
|
|
"instanceSize": "cache.t3.small",
|
|
"connectionStringEnvVarName": "REDIS_URL"
|
|
}
|
|
]
|
|
}
|
|
]
|
|
} |