Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Servicios de Azure DevOps | Azure DevOps Server | Azure DevOps Server 2022
En este artículo se explica cómo conectarse a los paquetes de fuente y publicación mediante dos flujos de autenticación: el proveedor de credenciales de Azure Artifacts para fuentes de su propia organización y un token de acceso personal (PAT) para fuentes hospedadas en otra organización.
Prerrequisitos
- Una organización de Azure DevOps.
- Un proyecto de Azure DevOps.
- Fuente Azure Artifacts.
-
nuget.exe versión
4.8.0.5385o posterior. Azure Artifacts recomienda NuGet5.5.xo versiones posteriores para obtener la mejor compatibilidad y confiabilidad. - Para publicar paquetes, debe tener el rol de Feed Publisher (Colaborador) o superior.
Configuración del proveedor de credenciales de Azure Artifacts
El proveedor de credenciales de Azure Artifacts habilita la autenticación segura en las fuentes de Azure Artifacts. Para usarlo con nuget.exe, primero debe agregarlo a la ruta de búsqueda del complemento de NuGet. Para obtener más información, consulte Instalación y detección de complementos. Una vez agregado el complemento, siga los pasos de instalación del sistema operativo:
Use uno de los métodos siguientes para instalar el proveedor de credenciales de Azure Artifacts:
Instalación manual
Descargue la versión más reciente Microsoft.NetFx48.NuGet.CredentialProvider.zip.
Extraiga el archivo ZIP.
Copie la
netfxcarpeta del archivo extraído en%UserProfile%/.nuget/plugins/. Lanetfxcarpeta es necesaria para nuget.exe compatibilidad.
Instalación mediante el script auxiliar
Como alternativa, puede usar el script del asistente automatizado para una instalación simplificada. Asegúrese de que tiene PowerShell 5.1 o posterior y, a continuación, ejecute:
iex "& { $(irm https://aka.ms/install-artifacts-credprovider.ps1) } -AddNetfx"
Para obtener más información, consulte el repositorio Azure Artifacts Proveedor de credenciales.
Conexión a una fuente
Antes de poder publicar sus paquetes, configure su proyecto y conéctese a su fuente de distribución como se indica a continuación:
Inicie sesión en la organización de Azure DevOps y vaya al proyecto.
Seleccione Artefactos y, a continuación, seleccione la fuente en el menú desplegable.
Seleccione Conectar a la fuente y, a continuación, seleccione NuGet.exe en el panel de navegación izquierdo.
Añada un archivo
nuget.configa su proyecto, en la misma carpeta que su archivo.csprojo.sln. Pegue el fragmento de código XML proporcionado en el archivo. El fragmento de código debe ser similar al siguiente:Feed con ámbito de organización:
<?xml version="1.0" encoding="utf-8"?> <configuration> <packageSources> <clear /> <add key="<SOURCE_NAME>" value="https://pkgs.dev.azure.com/<ORGANIZATION_NAME>/_packaging/<FEED_NAME>/nuget/v3/index.json" /> </packageSources> </configuration>Fuente con ámbito de proyecto:
<?xml version="1.0" encoding="utf-8"?> <configuration> <packageSources> <clear /> <add key="<SOURCE_NAME>" value="https://pkgs.dev.azure.com/<ORGANIZATION_NAME>/<PROJECT_NAME>/_packaging/<FEED_NAME>/nuget/v3/index.json" /> </packageSources> </configuration>
Inicie sesión en el servidor de Azure DevOps y vaya al proyecto.
Seleccione Artefactos y, a continuación, seleccione la fuente.
Seleccione Conectar a la fuente y, a continuación, seleccione NuGet.exe en el panel de navegación izquierdo.
Agregue un
nuget.configarchivo al proyecto, en la misma carpeta que el.csprojarchivo o.slny, a continuación, pegue el fragmento de código XML proporcionado en el archivo.
Publicar en un canal de la misma organización
Después de configurar nuget.config y autenticarse con el proveedor de credenciales de Azure Artifacts, ejecute el siguiente comando para publicar un paquete en la fuente. Reemplace los marcadores de posición por los valores devueltos adecuados:
nuget push <PACKAGE_PATH> -Source https://pkgs.dev.azure.com/<ORGANIZATION_NAME>/<PROJECT_NAME>/_packaging/<FEED_NAME>/nuget/v3/index.json -ApiKey <ANY_STRING>
Ejemplo:
nuget push MyPackage.5.0.2.nupkg -Source https://pkgs.dev.azure.com/MyOrg/MyProject/_packaging/MyFeed/nuget/v3/index.json -ApiKey AZ
Nota
El proveedor de credenciales de Azure Artifacts se encarga de la autenticación real para el push, pero NuGet sigue requiriendo un valor -ApiKey para aceptar el comando. Azure Artifacts omite el valor que proporcione, por lo que cualquier cadena no vacía funciona.
Publicar en un canal de otra organización
Si la fuente de destino está en una organización de Azure DevOps diferente, cree un PAT en esa organización y agregue la fuente como origen en el nuget.config archivo.
Cree un token de acceso personal (PAT) en la organización de destino con el ámbito delectura y escriturade empaquetado>.
Ejecute el siguiente comando para agregar la fuente como origen. Este comando añade tu PAT a
nuget.config, así que guarda el archivo de forma segura y no lo subas al control de código fuente.nuget sources Add -Name <SOURCE_NAME> -Source https://pkgs.dev.azure.com/<ORGANIZATION_NAME>/<PROJECT_NAME>/_packaging/<FEED_NAME>/nuget/v3/index.json -UserName <USER_NAME> -Password <PERSONAL_ACCESS_TOKEN> -config <PATH_TO_NUGET_CONFIG_FILE>Publique el paquete con el nombre de origen que acaba de agregar.
nuget push <PACKAGE_PATH> -Source <SOURCE_NAME> -ApiKey <ANY_STRING>
Ejemplo:
nuget sources Add -Name "MySource" -Source https://pkgs.dev.azure.com/MyOrg/MyProject/_packaging/MyFeed/nuget/v3/index.json -UserName MyUserName -Password YourPersonalAccessToken -config ./nuget.config
nuget push nupkgs/mypackage.1.1.8.nupkg -Source MySource -ApiKey AZ
Nota
Si su organización usa un firewall o un servidor proxy, permita las direcciones URL de dominio y las direcciones IP de Azure Artifacts.
Troubleshooting
No aparece el mensaje de autenticación
Asegúrese de que el proveedor de credenciales de Azure Artifacts está instalado y usa la versión 4.8.0.5385 de NuGet o posterior. Para conocer los pasos de configuración, consulte Conexión a fuentes de Azure Artifacts con NuGet.exe.
Se produce un error en la publicación porque la versión ya existe
Las versiones del paquete de Azure Artifacts son inmutables. Después de publicar una versión, no puede sobrescribirla ni reutilizar el mismo número de versión, incluso si elimina el paquete. Actualice la versión del paquete, recompile el paquete y vuelva a publicarlo.
La publicación falla detrás de un cortafuegos o proxy
Permita las direcciones URL de dominio y las direcciones IP de Azure Artifacts y vuelva a intentar la operación de publicación.
La publicación falla con un error 403
Este error suele indicar que tu cuenta no tiene permisos de publicación en el canal. Necesitas al menos el rol de Publicador de fuentes (Colaborador) para publicar paquetes. Pida a un propietario del feed que actualice su rol y vuelva a intentarlo.