Phase 13 : sogoms-cron
- Jobs planifiés avec schedule cron standard
- Types: query_email, http, service
- Actions: list, trigger, status
Phase 16 : Réorganisation config/apps/{app}/
- Tous les fichiers d'une app dans un seul dossier
- Migration prokov vers nouvelle structure
Phase 17 : sogoms-admin
- Interface web d'administration (Go templates + htmx)
- Auth sessions cookies signées HMAC-SHA256
- Rôles super_admin / app_admin avec permissions
Phase 19 : Création d'app via Admin UI
- Formulaire création app avec config DB/auth
- Bouton "Scanner la base" : introspection + schema.yaml
- Rechargement automatique sogoway via SIGHUP
Infrastructure :
- sogoctl : socket de contrôle /run/sogoctl.sock
- sogoway : reload config sur SIGHUP sans restart
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
45 lines
1.2 KiB
YAML
45 lines
1.2 KiB
YAML
# Configuration des tâches planifiées pour Prokov
|
|
timezone: Europe/Paris
|
|
|
|
retry:
|
|
max_attempts: 3
|
|
delay: 5m
|
|
|
|
history_days: 7
|
|
|
|
jobs:
|
|
# Email quotidien des tâches à faire
|
|
tasks_today:
|
|
schedule: "0 8 * * 1-5" # 8h00 du lundi au vendredi
|
|
type: query_email
|
|
enabled: true
|
|
|
|
# Requête : tâches du jour pour chaque utilisateur
|
|
# Retourne les tâches dont la date de fin est aujourd'hui ou dépassée
|
|
# et qui ne sont pas dans un statut "terminé" (code >= 100)
|
|
query: |
|
|
SELECT
|
|
u.id AS user_id,
|
|
u.email,
|
|
u.name AS user_name,
|
|
t.id AS task_id,
|
|
t.title,
|
|
t.priority,
|
|
t.date_end,
|
|
p.name AS project_name,
|
|
s.name AS status_name,
|
|
s.color AS status_color
|
|
FROM users u
|
|
INNER JOIN tasks t ON t.user_id = u.id
|
|
LEFT JOIN projects p ON t.project_id = p.id
|
|
LEFT JOIN statuses s ON t.status_id = s.id
|
|
WHERE (t.date_end <= CURDATE() OR t.date_start = CURDATE())
|
|
AND (s.code IS NULL OR s.code < 100)
|
|
ORDER BY u.id, t.priority DESC, t.date_end ASC, t.position ASC
|
|
|
|
# Grouper par user_id pour envoyer 1 email par utilisateur
|
|
group_by: user_id
|
|
|
|
# Template email à utiliser
|
|
template: tasks_today
|