Skip to content

[NestJS] Modularisation de server #1889

Description

@StephaneTrebel

Étapes de progression (Routes Métier)

  • Migré (Code-Ready) : Le code est porté dans NestJS, PR mergée, tests validés.
  • Fait (Hors-Trafic) : Déployé en production mais le flux réseau ne l'atteint pas encore.
  • Fait (Trafic Actif) : Nginx redirige vers NestJS. Action terminée.

Étapes de progression (Plugins)

  • Migré (Wrapper NestJS terminé) : L'encapsulation dans un module NestJS est faite.
  • Contrôleur Passif : Déployé sans reconsilliation avec les services.
  • Contrôleur Activé : Officiellement utilisé par les services NestJS (DI injectée).

1. Module system

  • GET /api/v1/version
    • Migré (Code-Ready)
    • Fait (Hors-Trafic)
    • Fait (Trafic Actif)
  • GET /api/v1/healthz
    • Migré (Code-Ready)
    • Fait (Hors-Trafic)
    • Fait (Trafic Actif)

2. Module system/settings & config

  • GET /api/v1/system/settings
    • Migré (Code-Ready)
    • Fait (Hors-Trafic)
    • Fait (Trafic Actif)
  • GET /api/v1/admin/plugins-config
    • Migré (Code-Ready)
    • Fait (Hors-Trafic)
    • Fait (Trafic Actif)

3. Modules tokens (Admin & User)

  • GET /api/v1/admin/tokens
    • Migré (Code-Ready)
    • Fait (Hors-Trafic)
    • Fait (Trafic Actif)
  • GET /api/v1/users/me/tokens
    • Migré (Code-Ready)
    • Fait (Hors-Trafic)
    • Fait (Trafic Actif)

4. Module user & admin-role

  • POST /api/v1/auth (Sync session)
    • Migré (Code-Ready)
    • Fait (Hors-Trafic)
    • Fait (Trafic Actif)
  • GET /api/v1/admin/roles
    • Migré (Code-Ready)
    • Fait (Hors-Trafic)
    • Fait (Trafic Actif)

5. Module stage & zone

  • GET /api/v1/stages
    • Migré (Code-Ready)
    • Fait (Hors-Trafic)
    • Fait (Trafic Actif)
  • POST /api/v1/zones
    • Migré (Code-Ready)
    • Fait (Hors-Trafic)
    • Fait (Trafic Actif)

6. Module cluster & environment

  • GET /api/v1/clusters
    • Migré (Code-Ready)
    • Fait (Hors-Trafic)
    • Fait (Trafic Actif)
  • POST /api/v1/projects/:id/environments
    • Migré (Code-Ready)
    • Fait (Hors-Trafic)
    • Fait (Trafic Actif) — déjà routé via ^~ /api/v1/projects dans nginx-strangler

7. Module repository & project-member

  • GET /api/v1/projects/:id/repositories
    • Migré (Code-Ready)
    • Fait (Hors-Trafic)
    • Fait (Trafic Actif) — déjà routé via ^~ /api/v1/projects dans nginx-strangler
  • POST /api/v1/projects/:id/members
    • Migré (Code-Ready)
    • Fait (Hors-Trafic)
    • Fait (Trafic Actif) — déjà routé via ^~ /api/v1/projects dans nginx-strangler

8. Module project-core

  • GET /api/v1/projects
    • Migré (Code-Ready)
    • Fait (Hors-Trafic)
    • Fait (Trafic Actif) — déjà routé via ^~ /api/v1/projects dans nginx-strangler
  • POST /api/v1/projects
    • Migré (Code-Ready)
    • Fait (Hors-Trafic)
    • Fait (Trafic Actif) — déjà routé via ^~ /api/v1/projects dans nginx-strangler
  • DELETE /api/v1/projects/:id
    • Migré (Code-Ready)
    • Fait (Hors-Trafic)
    • Fait (Trafic Actif) — déjà routé via ^~ /api/v1/projects dans nginx-strangler

9. Module project-secrets & bulk

  • GET /api/v1/projects/:id/secrets
    • Migré (Code-Ready)
    • Fait (Hors-Trafic)
    • Fait (Trafic Actif) — déjà routé via ^~ /api/v1/projects dans nginx-strangler
  • POST /api/v1/admin/projects/bulk
    • Migré (Code-Ready)
    • Fait (Hors-Trafic)
    • Fait (Trafic Actif) — déjà routé via /api/v1/projects-bulk dans nginx-strangler

État des Plugins

Plugin Sonarqube

  • Migré (Wrapper NestJS terminé)
  • Contrôleur Passif
  • Contrôleur Activé

Plugin Vault

  • Migré (Wrapper NestJS terminé)
  • Contrôleur Passif
  • Contrôleur Activé

Plugin Keycloak

  • Migré (Wrapper NestJS terminé)
  • Contrôleur Passif
  • Contrôleur Activé

Plugin GitLab

  • Migré (Wrapper NestJS terminé)
  • Contrôleur Passif
  • Contrôleur Activé

Plugin ArgoCD

  • Migré (Wrapper NestJS terminé)
  • Contrôleur Passif
  • Contrôleur Activé

Plugin Harbor

  • Migré (Wrapper NestJS terminé)
  • Contrôleur Passif
  • Contrôleur Activé

Plugin Nexus

  • Migré (Wrapper NestJS terminé)
  • Contrôleur Passif
  • Contrôleur Activé

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Labels

technical debtRésoud de la dette technique

Type

Projects

No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions