fix: /public/apps ne bloque plus sur getAllStatuses (async -> sync)

This commit is contained in:
Manus
2026-07-24 10:40:45 +00:00
parent 85bd5209c7
commit eb07a99e5e

View File

@@ -419,10 +419,13 @@ router.get('/public/status', async (req, res) => {
// ============ PUBLIC APPS ROUTE (sans authentification) ============ // ============ PUBLIC APPS ROUTE (sans authentification) ============
// Utilisé par le portail applicatif pour construire les tuiles dynamiquement // Utilisé par le portail applicatif pour construire les tuiles dynamiquement
router.get('/public/apps', async (req, res) => { // Ne bloque jamais : retourne les apps avec status 'unknown' si les health checks ne sont pas encore disponibles
router.get('/public/apps', (req, res) => {
try { try {
res.setHeader('Access-Control-Allow-Origin', '*'); res.setHeader('Access-Control-Allow-Origin', '*');
res.setHeader('Cache-Control', 'no-cache, no-store, must-revalidate'); res.setHeader('Cache-Control', 'no-cache, no-store, must-revalidate');
// getAllStatuses() retourne un tableau vide si aucun check n'a encore été effectué
// On ne déclenche PAS checkAllApps() ici pour éviter de bloquer la réponse
const statuses = getAllStatuses(); const statuses = getAllStatuses();
const publicApps = config.apps const publicApps = config.apps
.filter((a) => a.category !== 'INFRA') // Exclure les apps infra (portail, dashboard) .filter((a) => a.category !== 'INFRA') // Exclure les apps infra (portail, dashboard)
@@ -432,7 +435,7 @@ router.get('/public/apps', async (req, res) => {
id: a.id, id: a.id,
name: a.name, name: a.name,
category: a.category || 'SANTINOVA', category: a.category || 'SANTINOVA',
image: a.image || `images/${a.id}.png`, image: a.image || ('images/' + a.id + '.png'),
urls: a.urls || {}, urls: a.urls || {},
status: status ? status.status : 'unknown', status: status ? status.status : 'unknown',
containerRunning: status && status.container ? status.container.running : false, containerRunning: status && status.container ? status.container.running : false,