65da20c225
* WIP clickhouse package with test containers setup * More clickhouse client setup now with otel and real tests, and the v1 of raw run events * Add some additional columns to raw_run_events_v1 * WIP runs dashboard service * Create a new run engine event bus event for the runs dashboard to hook into * Track run events in the run engine * make sure engine v1 runs get synced to CH * Update the attemptNumber of v3 task runs * Restructure the run events to be more sparse * emit more stuff * Setup replication package * scaffold the replication package * replication wip * resolve conflicts * more replication stuff * Add ability to drop the replication slot completely on teardown * Use the new single replacingmergetree task events table for replication * get it working * insert payloads into their own table only on insert and then join * prepare for using clickhouse cloud and now running ch migrations during boot in the entrypoint.sh * Handover WIP and tests * Testing the replication service * Remove the runs dashboard stuff that we aren't using anymore * Added a test for large payloads * hacky typecheck fix * Fix new internal package typecheck issues and start adding telemetry to the replication service * tracing over spans, some other improvements * Improvements to the runs replication service, now ready for testing * Some fixes and cleanups * Don't need this code anymore * move transaction types into the runs replication service * only send spans where there are transaction events * A couple of suggested tweaks
33 lines
1.0 KiB
Bash
Executable File
33 lines
1.0 KiB
Bash
Executable File
#!/bin/sh
|
|
set -xe
|
|
|
|
if [ -n "$DATABASE_HOST" ]; then
|
|
scripts/wait-for-it.sh ${DATABASE_HOST} -- echo "database is up"
|
|
fi
|
|
|
|
# Run migrations
|
|
echo "Running prisma migrations"
|
|
pnpm --filter @trigger.dev/database db:migrate:deploy
|
|
echo "Prisma migrations done"
|
|
|
|
if [ -n "$CLICKHOUSE_URL" ]; then
|
|
# Run ClickHouse migrations
|
|
echo "Running ClickHouse migrations..."
|
|
export GOOSE_DRIVER=clickhouse
|
|
export GOOSE_DBSTRING="$CLICKHOUSE_URL" # Use the full URL provided by the env var
|
|
export GOOSE_MIGRATION_DIR=/triggerdotdev/internal-packages/clickhouse/schema
|
|
/usr/local/bin/goose up
|
|
echo "ClickHouse migrations complete."
|
|
else
|
|
echo "CLICKHOUSE_URL not set, skipping ClickHouse migrations."
|
|
fi
|
|
|
|
# Copy over required prisma files
|
|
cp internal-packages/database/prisma/schema.prisma apps/webapp/prisma/
|
|
cp node_modules/@prisma/engines/*.node apps/webapp/prisma/
|
|
|
|
cd /triggerdotdev/apps/webapp
|
|
# exec dumb-init pnpm run start:local
|
|
NODE_PATH='/triggerdotdev/node_modules/.pnpm/node_modules' exec dumb-init node --max-old-space-size=8192 ./build/server.js
|
|
|