Skip to content

Refacto de la génération du fichier entreeCarto.json #26

Description

@elias75015

Ticket à compléter, notamment sur les idées de solutions à long terme

Contexte : L'idée est de réduire la place du projet geoportal-config et des github-actions dans l'infra du chargement du visualiseur cartes.gouv.

Problèmes :

  • dépendance de l'entrée carto d'un appel à github (ce serait vraiment mieux si ça ne dépendait que de data.geopf.fr et cartes.gouv.fr)
  • problème de mise en cache. Le fichier de conf n'est pas immédiatement visible sur l'entrée carto parce qu'il est conservé en cache
  • le dépôt commence à être très volumineux (500Mo le git clone) ça peut compliquer son accès ou sa gestion à terme.
  • appel à une route tierce (ni cartes.gouv.fr, ni data.geopf.fr) est risqué quand il y aura la bascule du trafic géoportail. Github doit avoir un mécanisme de rate-limiting pour l'url raw githubusercontent.

A court terme :

  • faire évoluer la github action pour déposer en fin d'opération le fichier entreeCarto généré sur la GPF (et ainsi plus d'appel direct à github côté client pour récupérer le fichier) pour que l'entrée carto ne fasse plus d'appel à github au chargement
  • forcer l'invalidation du cache sur le fichier entreeCarto.json (via un hash sur le fichier par exemple) ? (le fichier servi par github l'est pourtant avec un etag)
  • faire un nettoyage de l'historique gitHub du repo geoportal-configpour réduire son poids

A plus long terme :

  • remplacer la partie génération spécifique pour l'entrée carto par un service dédié côté GPF (le retour d'une sorte service d'autoconf quoi...) ?
  • migrer tout ou partie du projet geoportal-configuration sur IGN MUT ? (Si migration totale: Quelques problèmes risquent de se poser vis à vis des routes des fichiers thématiques, utilisés par les utilisateurs API JS comme "theme" dans le paramètre apiKey)
  • attention evols potentielles liées au moissonnage de catalogues externes : fichier qui viendra enrichir entreeCarto.json

Metadata

Metadata

Labels

enhancementNew feature or request

Type

Fields

No fields configured for Task.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions