mirror of
https://github.com/ToolJet/ToolJet
synced 2026-04-21 21:47:17 +00:00
* refactor(workflows): migrate core modules from Temporal to BullMQ Update main application modules to support BullMQ-based workflow scheduling: - Remove Temporal worker bootstrap code from main.ts - Migrate from @nestjs/bull to @nestjs/bullmq - Add Bull Board dashboard at /jobs with basic auth - Register BullMQ queues in WorkflowsModule - Add IWorkflowScheduler interface for scheduler abstraction - Create CE stubs for WorkflowSchedulerService and ScheduleBootstrapService - Remove workflow dependencies from AppsModule (moved to WorkflowsModule) - Add proper route exclusion for /jobs dashboard - Support WORKER env var for conditional processor registration This commit completes the migration from Temporal to BullMQ for workflow scheduling, enabling simpler deployment and better horizontal scaling. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com> * chore: remove unused Temporal imports and commented code Clean up migration artifacts: - Remove unused imports from main.ts (TOOLJET_EDITIONS, getImportPath, ITemporalService, getTooljetEdition) - Remove commented TemporalService references from WorkflowsModule - Remove temporal.service from getProviders path array - Add missing newlines at EOF for IWorkflowScheduler.ts and schedule-bootstrap.service.ts This cleanup prepares the codebase for complete Temporal code removal in a future commit. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com> * build: add BullMQ and Bull Board dependencies Add required packages for BullMQ-based workflow scheduling: - @nestjs/bullmq: NestJS integration for BullMQ - @bull-board/api, @bull-board/express, @bull-board/nestjs: Queue dashboard - bullmq: Core BullMQ library - express-basic-auth: Authentication for Bull Board dashboard Note: @nestjs/bull is kept for backward compatibility during migration. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com> * chore: remove Temporal service files from CE Remove deprecated Temporal-based workflow implementation files: - server/src/modules/workflows/interfaces/ITemporalService.ts - server/src/modules/workflows/services/temporal.service.ts These files are replaced by IWorkflowScheduler interface and BullMQ-based WorkflowSchedulerService implementation. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com> * feat: add comprehensive Redis configuration support for BullMQ * refactor: remove Temporal setup and configuration from entrypoint scripts and Dockerfiles (#14294) * refactor: remove Temporal setup and configuration from entrypoint scripts and Dockerfiles * feat: integrate Redis support for BullMQ in preview environment * remove worker execution logic from setup script * Refactor: Centralise workflow execution through BullMQ (#14321) * refactor: run all workflows through bullmq * refactor: update imports * chore: update subproject commit reference in server/ee * feat: ablity to cancel workflow * feat: implement workflow cancellation functionality with Redis support * feat: add optional timeout parameter to requestCancellation method * refactor: clean up formatting and add maintenance toggle event emission in AppsService * feat: ability to cancel multiple inprogress executions * feat: implement execution state management and display logic * chore: update submodule commit reference --------- Co-authored-by: Claude <noreply@anthropic.com> Co-authored-by: Adish M <44204658+adishM98@users.noreply.github.com>
35 lines
No EOL
1.1 KiB
Bash
Executable file
35 lines
No EOL
1.1 KiB
Bash
Executable file
#!/bin/bash
|
|
set -e
|
|
|
|
echo "🚀 Starting Try ToolJet container initialization..."
|
|
|
|
# Step 1: Configure and Start PostgreSQL
|
|
echo "🔧 Configuring PostgreSQL authentication..."
|
|
sed -i 's/^local\s\+all\s\+postgres\s\+\(peer\|md5\)/local all postgres trust/' /etc/postgresql/16/main/pg_hba.conf >/dev/null 2>&1
|
|
sed -i 's/^local\s\+all\s\+all\s\+\(peer\|md5\)/local all all trust/' /etc/postgresql/16/main/pg_hba.conf >/dev/null 2>&1
|
|
|
|
echo "📈 Starting PostgreSQL..."
|
|
service postgresql start
|
|
|
|
echo "⏳ Waiting for PostgreSQL..."
|
|
until pg_isready -h localhost -p 5432; do
|
|
echo "PostgreSQL not ready yet, retrying..."
|
|
sleep 2
|
|
done
|
|
echo "✅ PostgreSQL is ready!"
|
|
|
|
# Create ToolJet user
|
|
psql -U postgres -tc "SELECT 1 FROM pg_roles WHERE rolname='tooljet'" | grep -q 1 || \
|
|
psql -U postgres -c "CREATE USER tooljet WITH PASSWORD 'postgres' SUPERUSER;" >/dev/null 2>&1
|
|
|
|
# Export default port if not set
|
|
export PORT=${PORT:-80}
|
|
|
|
supervisord -c /etc/supervisor/conf.d/supervisord.conf &
|
|
SUPERVISOR_PID=$!
|
|
|
|
echo "🎉 All services started successfully!"
|
|
echo "📍 ToolJet should be accessible at http://localhost"
|
|
|
|
# Wait on background processes
|
|
wait $SUPERVISOR_PID |