es

Configuración

pcpm.json, variables de entorno y configuración de feeds.

PCPM tiene tres niveles de configuración, en orden creciente de precedencia:

  1. pcpm.json del workspace — commiteado a tu repo. Compartido con el equipo.
  2. Variables de entorno — para overrides locales de la máquina.
  3. Flags de la CLI — para invocaciones puntuales.

pcpm.json

Un pcpm.json típico se ve así:

{
  "version": "1.0",
  "store": {
    "path": null,
    "auto": true
  },
  "feeds": [
    {
      "name": "nuget.org",
      "url": "https://api.nuget.org/v3/index.json"
    }
  ],
  "updateCheck": true,
  "lockfile": {
    "floating": "pin"
  }
}

Esquema

CampoTipoPor defectoQué hace
versionstring"1.0"Versión del esquema. Sube en cambios incompatibles.
store.pathstring | nullnull (auto-detectar)Sobrescribe la ubicación del store.
store.autobooleantrueDeja que PCPM elija la ubicación del store.
feedsFeedConfig[][nuget.org]Feeds NuGet a consultar.
feeds[].namestringrequeridoNombre a mostrar.
feeds[].urlstringrequeridoURL del índice NuGet v3.
feeds[].credentialsobject?nullAuth opcional (ver abajo).
updateCheckbooleantrueComprobar versiones nuevas de PCPM al instalar.
lockfile.floating"pin"|"follow""pin"Cómo resolver rangos de versión flotantes.
dotnetstring?nullRuta al ejecutable dotnet.
msbuildobject?nullOpciones de integración con MSBuild.

Autenticación de feeds

Para feeds privados, configura credentials por feed:

{
  "feeds": [
    {
      "name": "private",
      "url": "https://pkgs.contoso.com/v3/index.json",
      "credentials": {
        "username": "ci-bot",
        "tokenEnv": "PCPM_FEED_TOKEN"
      }
    }
  ]
}

tokenEnv es el nombre de una variable de entorno que contiene el token. El token se lee en tiempo de ejecución; nunca se escribe en pcpm.json ni en el lockfile.

Variables de entorno

VariableEquivalente en pcpm.jsonNotas
PCPM_STORE_PATHstore.pathSobrescribe la ubicación del store.
PCPM_FEED_TOKENpor feed credentials.tokenEnvNombre por defecto del env de token.
PCPM_DOTNET_PATHdotnetRuta al binario dotnet.
PCPM_NO_UPDATE_CHECKupdateCheck: falsePon 1 para desactivar.
PCPM_LOG_LEVEL(ninguno)quiet, normal, verbose.
PCPM_COLOR(ninguno)auto, always, never.

Flags de la CLI

La mayoría de comandos aceptan un pequeño conjunto de flags:

FlagEfecto
--no-colorDesactiva el color ANSI.
--quiet / -qSuprime la salida que no sea de error.
--verbose / -vImprime cada decisión del resolver.
--cwd <path>Ejecuta como si pcpm se hubiera invocado desde <path>.
--config <path>Usa un fichero pcpm.json diferente.

Overrides por proyecto

Para la mayoría de workspaces, pcpm.json es suficiente. Para layouts inusuales — p. ej. un único repo que contiene dos workspaces — puedes poner un pcpm.json en cualquier subdirectorio. PCPM sube desde el directorio de trabajo actual hasta que encuentra uno.

Validación

pcpm config validate comprueba tu pcpm.json contra el esquema y reporta cualquier problema. Ejecútalo tras una edición a mano.

Migrar desde una versión antigua

Cuando cambia el esquema de pcpm.json, la migración es automática: en pcpm install, el loader actualiza tu fichero in situ. Si la actualización no es trivial (se eliminó un campo, cambió la forma), el loader escribe un .bak antes e imprime una advertencia. Lee la advertencia, commitea el fichero nuevo, push.