Skip to content

🐛 [BUG] - Le secret Vault NEXUS n'est pas créé au bon emplacement dans l'espace du projet lors du provisionnement (server-nestjs) #2401

Description

@KepoParis

Description

Lors du provisionnement d'un projet par le nouveau serveur server-nestjs, le secret Vault NEXUS (NEXUS_USERNAME, NEXUS_PASSWORD) n'apparaĂźt pas Ă  l'emplacement attendu dans l'espace de secrets du projet.

Avec l'ancien plugin plugins/nexus, ce secret Ă©tait Ă©crit via l'API Vault portĂ©e par le projet (plugins/nexus/src/project.ts:188 → vaultApi.write({...}, 'NEXUS')), qui rĂ©sout le chemin Ă  <PROJECTS_ROOT_DIR>/<slug>/NEXUS (plugins/vault/src/vault-project-api.ts:102-105). Le secret se trouvait donc directement dans le dossier du projet, sous la clĂ© NEXUS.

Dans le nouveau serveur, le secret est Ă©crit sous <PROJECTS_ROOT_DIR>/<slug>/tech/NEXUS — avec un segment tech/ supplĂ©mentaire qui n'existait pas auparavant.

Conséquence observée :

  • le secret NEXUS est absent de l'emplacement historique (.../NEXUS) et se trouve dĂ©sormais sous .../tech/NEXUS ; les consommateurs qui le lisent Ă  l'ancien emplacement ne le trouvent plus.

Etapes de reproduction

1. Provisionner (ou re-synchroniser) un projet via le serveur server-nestjs
2. Ouvrir Vault → espace forge-dso → <PROJECTS_ROOT_DIR>/<slug>/
3. Constater l'absence du secret NEXUS directement dans le dossier du projet
4. Constater que le secret se trouve sous <PROJECTS_ROOT_DIR>/<slug>/tech/NEXUS

Piste technique (oĂč se trouve l'erreur)

Dans apps/server-nestjs/src/modules/nexus/nexus.service.ts, la mĂ©thode ensureUser construit le chemin avec getProjectVaultPath(this.baseConfig.projectsRootDir, project.slug, 'tech/NEXUS') (ligne 435, Ă©criture ligne 466-469), ce qui donne <PROJECTS_ROOT_DIR>/<slug>/tech/NEXUS. L'ancien plugin Ă©crivait Ă  <PROJECTS_ROOT_DIR>/<slug>/NEXUS. Il faut retirer le segment tech/ (chemin relatif 'NEXUS') pour retrouver l'emplacement historique. La lecture (ligne 438) et la suppression (ligne 580) utilisent le mĂȘme chemin et sont Ă  corriger de la mĂȘme façon. Le contenu du secret, lui, est correct.

Version de la console impactée

v9.23.0

Activity

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

Metadata

Metadata

Assignees

Labels

bugSomething isn't working

Type

Projects

No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions