Runbook : build échoué
Quand git push échoue. Lecture des logs, causes les plus fréquentes, comment l'agent Build Doctor peut aider.
Lire les logs de build
$ paas releases:list --app monsite
$ paas builds:logs v48 --app monsite
$ paas builds:logs v48 --app monsite
Causes fréquentes
Lockfile désynchronisé
npm ERR! cannot install in the same node_modules directory
Symptômes : npm/yarn/pip se plaignent de versions incompatibles. Cause : package.json mis à jour sans regen du package-lock.json.
Correctif : régénérer le lockfile localement, commiter, repush.
Version de runtime non supportée
Detected Node.js 24.x · this version is not in our list of supported versions
Vérifiez les versions supportées. Fixez la version dans votre package.json (champ engines) ou dans .nvmrc.
Build qui s'effondre en mémoire
Killed (OOM): build process exceeded memory limit
Le build a besoin de plus de RAM. Augmenter la taille du builder dans paas.toml :
[build]
builder_size = "performance-m" # défaut: standard-1x
builder_size = "performance-m" # défaut: standard-1x
Compilation native qui échoue
node-gyp ERR! Failed to compile native addon
Souvent dû à des dépendances natives mal compilées. Solutions :
- Vérifiez que vous utilisez une version stable de votre runtime (LTS)
- Testez en local avec
pack build(Cloud Native Buildpacks) - Migrez vers une dépendance pure-JS quand c'est possible
L'agent Build Doctor
Si le Build Doctor est activé sur votre compte, il diagnostique automatiquement :
- Lit les logs de build
- Identifie la cause probable
- Teste un correctif dans une sandbox isolée
- Si le correctif fonctionne, ouvre une PR
Activer si ce n'est pas fait : paas agents:enable build-doctor.
Si rien ne fonctionne
Contactez le support avec les éléments suivants :
- ID de la release qui échoue (
v48) - Les 100 dernières lignes des logs de build
- Votre
paas.tomlet votrepackage.json(ou équivalent)