The bundle generation service uses pip3 to install Python dependencies
when TOOLJET_WORKFLOW_SANDBOX_BYPASS=true. The runtime image was missing
python3-pip, causing "pip3: not found" errors on Render.
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Copy python-execution.cfg from server/ee/workflows/nsjail/ (via builder)
instead of docker/nsjail/ to match ee-preview.Dockerfile and use the
same config source.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Move nsjail compilation to builder stage (matches ee-production pattern)
- Move Python venv creation to builder stage
- Copy pre-built binaries in final stage instead of building there
- Add runtime deps: libprotobuf23, libnl-route-3-200, python3
- Use chmod 1777 (sticky bit) for /tmp/python-exec
- Remove decorative banner comments
This reduces final image size by excluding build tools (gcc, autoconf, etc.)
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Add nsjail build and Python installation to LTS ee-preview Dockerfile
- Include pre-installed packages (numpy, pandas, requests, httpx, pydantic)
- Copy nsjail config for Python sandboxing
- Revert pre-release Dockerfile to original (shipping to LTS first)
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Add Python 3 and nsjail to EE preview Dockerfile
- Pre-install common packages (numpy, pandas, requests, httpx, pydantic)
- Add TOOLJET_WORKFLOW_SANDBOX_BYPASS=true to Render workflow
- Document bypass env var in .env.example
Render doesn't support SYS_ADMIN capability, so nsjail sandboxing won't
work. The bypass env var explicitly opts-in to unsandboxed execution
for cloud platforms with restricted capabilities.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
* 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>
* fix: set group write permissions for frontend build files to support RedHat user assignment
* version bump from 3.16.8-lts to 3.16.9-lts
* revert: downgrade version from 3.16.9-lts to 3.16.8-lts across all components
* Changing folder for LTS and pre-release
* correction in entrypoint path in pre-release dockerfile
* made change to render PR workflow to pickup the dockerfile according to branch
* Fix: Post release automation corrections
* automation fix for merging submodules PRs
* remove the extra slack notification in the docker CE release job
* adding the branch fall to cloud dockerfile
* Enhance Neo4j configuration and installation in Try tooljet Dockerfiles with APOC plugin support
* fix: Update Dockerfile to use the latest ToolJet image version