mirror of
https://codeberg.org/cotralis/DbTaak_Scheduler.git
synced 2026-06-05 23:54:10 +00:00
DbTaak_Scheduler reads sql database for actions
- C# 90%
- TSQL 7.1%
- Batchfile 2.9%
| Filename | Latest commit message | Latest commit date |
|---|---|---|
| scripts | ||
| sql | ||
| .gitattributes | ||
| .gitignore | ||
| compile.cmd | ||
| compile2.cmd | ||
| DbTaak_Scheduler.config | ||
| DbTaak_Scheduler.csproj | ||
| DbTaak_Scheduler.dll | ||
| DbTaak_Scheduler.sln | ||
| DbTaak_Scheduler_Documentatie_v1.0.docx | ||
| installservice.cmd | ||
| LICENSE.txt | ||
| Program.cs | ||
| README.txt | ||
RGW.Scheduler (self-contained exe) ================================= Wat doet het? - Pollt SQL Server voor "due" taken (NextRunAt <= now UTC) - Lockt taken atomair (READPAST + UPDLOCK) zodat meerdere schedulers naast elkaar kunnen draaien - Voert taken uit (CMD, POWERSHELL, SQL) - Allowlist: CMD/POWERSHELL payload moet een absoluut pad zijn onder AllowedRoots - Server targeting: RGW_Task.ServerName moet leeg/NULL zijn, of gelijk aan Environment.MachineName - Quartz Cron: CronExpression (met secondenveld) wordt gebruikt om NextRunAt opnieuw te berekenen - Retry: MaxRetries + exponential backoff (BackoffBaseSec, BackoffFactor) - Service-mode: UseWindowsService() Config ------ Plaats "rgwschedule.config" naast de exe (zelfde map). Voorbeeld staat in dit zipbestand. Build/publish ------------- 1) dotnet restore 2) dotnet publish -c Release -r win-x64 /p:PublishSingleFile=true /p:SelfContained=true Service installatie ------------------- Zie scripts\install-service.cmd SQL --- Zie sql\schema.sql Einde