# Tâches planifiées

Le planificateur Laravel est défini dans `routes/console.php`.

Ajouter au cron du serveur (OVH) :
```
* * * * * cd /home/.../endsv2 && php artisan schedule:run >> /dev/null 2>&1
```

| Tâche | Fréquence | Rôle |
|---|---|---|
| `yggdrasil:purge-trash` | quotidien 03:30 | Vide la corbeille (soft→hard delete) + purge RGPD des leads > 12 mois |
| `sources:import` | horaire | Rafraîchit le cache La Comte (activités/troupes) + Orgexpo (exposants) |
| Sauvegarde BDD | quotidien | Voir BACKUP.md (à brancher) |

## Import automatique des sources (La Comte / Orgexpo)

Trois options, par ordre de simplicité sur **OVH mutualisé** :

1. **Déclencheur HTTP + cron externe (recommandé sur mutualisé)** : définir `CRON_TOKEN` (un secret) dans le `.env`, puis faire appeler **toutes les heures** par OVH (tâche planifiée → wget/curl) ou un service gratuit (cron-job.org) :
   ```
   https://noeldessorciers.festyggdrasil.fr/api/v1/tasks/import?token=VOTRE_CRON_TOKEN
   ```
2. **Cron CLI direct** (si SSH/CLI dispo) : `php /home/.../endsv2/artisan sources:import` toutes les heures.
3. **Scheduler Laravel** : `* * * * * php artisan schedule:run` (lance `sources:import` horaire + la purge).

Sinon, l'import reste déclenchable manuellement depuis le back-office (boutons « Importer » des pages La Comte / Orgexpo).

Logs des exécutions conservés 30 jours. Alerte en cas d'échec (à connecter : email/webhook).
