Configuration
Volta utilise plusieurs fichiers de configuration pour gérer votre chaîne d'outils JavaScript. Cette référence explique les options de configuration disponibles et leurs formats.
Configuration de projet
La configuration spécifique à un projet est stockée sous la clé volta
dans le fichier package.json
du projet.
Format
{
"volta": {
"node": "16.14.2",
"npm": "8.5.0",
"yarn": "1.22.19",
"extends": "../shared-volta-config.json"
}
}
Propriétés
Propriété | Type | Description |
---|---|---|
node | String | Version de Node.js à utiliser dans ce projet |
npm | String | Version de npm à utiliser dans ce projet |
yarn | String | Version de Yarn à utiliser dans ce projet |
pnpm | String | Version de pnpm à utiliser dans ce projet |
extends | String | Chemin vers un fichier de configuration Volta partagé |
Formats de version
Les chaînes de version dans la configuration volta
peuvent utiliser les formats suivants :
- Version exacte :
16.14.2
- Version majeure seulement :
16
- Versions majeure et mineure :
16.14
- Plage de versions (npm semver) :
^16.14.0
- Tags :
latest
,lts
Configuration de projet partagée
Vous pouvez créer des configurations Volta partagées que plusieurs projets peuvent étendre. Ceci est utile pour les organisations qui veulent standardiser les versions d'outils entre projets.
Format
{
"node": "16.14.2",
"npm": "8.5.0"
}
Le format est le même que la section volta
dans package.json
, mais au niveau racine du fichier JSON.
Configuration utilisateur
La configuration utilisateur de Volta est stockée dans le répertoire principal de Volta :
- Unix :
~/.volta/
- Windows :
%LOCALAPPDATA%\Volta\
Stockage d'outils
Les outils installés sont stockés dans des répertoires structurés :
- Node.js :
~/.volta/tools/image/node/
- Gestionnaires de paquets :
~/.volta/tools/image/yarn/
,~/.volta/tools/image/npm/
- Paquets :
~/.volta/tools/user/packages/
Répertoire de hooks
Les hooks personnalisés sont stockés dans ~/.volta/hooks/
. Voir la section Fonctionnalités avancées pour plus de détails.
Variables d'environnement
Les variables d'environnement fournissent une autre façon de configurer le comportement de Volta. Voir la page Variables d'environnement pour une référence complète.
Priorité de configuration
Lors de la résolution de quelle version d'outil utiliser, Volta vérifie les sources dans cet ordre :
- Arguments de ligne de commande (par exemple,
volta run --node 14
) - Configuration de projet dans le
package.json
le plus proche contenant une sectionvolta
- Versions d'outils par défaut de l'utilisateur (définies via
volta install
) - Versions groupées (par exemple, npm groupé avec Node.js)
Exemples
Configuration de projet typique
{
"name": "my-project",
"version": "1.0.0",
"volta": {
"node": "16.14.2",
"npm": "8.5.0"
},
"dependencies": {
// ...
}
}
Configuration étendue
// shared-config.json
{
"node": "16.14.2",
"yarn": "1.22.19"
}
// package.json
{
"name": "my-project",
"version": "1.0.0",
"volta": {
"extends": "./shared-config.json",
"npm": "8.5.0" // Remplace toute version npm de la configuration étendue
}
}
Configuration d'espace de travail
Pour les projets basés sur des espaces de travail, la configuration du package.json
racine s'applique à tous les paquets de l'espace de travail :
// package.json racine
{
"name": "workspace-root",
"volta": {
"node": "16.14.2",
"yarn": "1.22.19"
},
"workspaces": [
"packages/*"
]
}
// packages/app/package.json - utilisera Node.js 16.14.2 et Yarn 1.22.19
{
"name": "app",
"version": "1.0.0",
// Aucune section volta nécessaire ici
}