mirror of
https://github.com/makeplane/plane.git
synced 2026-07-12 21:40:18 +02:00
* feat: added worker for executing and scheduling parallel tasks * feat: implemented worker based execution over cron handlers * feat: added router to package to run go fiber for dns validation * chore: added router package to go workspace * feat: added dns route controller * feat: added dns validation handler for route * feat: added healthcheck as a core function * feat: implemented worker for scheduling and running multiple tasks over goroutines * feat: added cron and http start handlers * feat: added prime scheduler handler to comply with prime scheduler * feat: implemented worker in cli start command * feat: added tests for dns validation handler * feat: added run test script to run test inside monitor * feat: added test for background worker * feat: implemented graceful shutdown for cancellation of jobs * feat: added readme for core package * fix: worker cancellation of tasks with ctx * fix: added closing channels in worker * fix: handled case for repeated keys in dns validation endpoint
Core
The Core Package acts as a bridge between the modules and the executors like cron, http and the modules, such as healthcheck or router. The view here is that the execution for a particular module's feature can be used in many way and should be generic enough to be used with any type of executor.
Conventions
- Please don't use any sort of strict types from any module or package.
- Define interfaces instead of hard types, for example if you check healthcheck.go, there is a runner interface defined, which enables any executor to implement those methods and use the core functions.