Introducción a los paquetes de Python en Azure Artifacts
Azure DevOps Services | Azure DevOps Server 2022: Azure DevOps Server 2019
Con Azure Artifacts, puede publicar y descargar paquetes de fuentes y registros públicos, como PyPi. Este inicio rápido le guiará a través de la creación de una fuente, la configuración del proyecto y la administración de paquetes de Python en la fuente de Azure Artifacts. En este artículo, aprenderá a:
- Cree un nuevo canal.
- Autentíquese con su feed de datos.
- Publicar paquetes de Python.
- Instale paquetes desde su fuente.
Prerrequisitos
Cree una organización de Azure DevOps y un proyecto de si aún no lo ha hecho.
Descargue e instale python.
Obtención del código
Si no tiene su propio proyecto de Python, puede usar el siguiente proyecto de Python de ejemplo:
https://github.com/microsoft/python-package-template
Para compilar la distribución de wheel y origen, ejecute los siguientes comandos en el directorio de su proyecto:
pip install --upgrade build python -m build
Si el proyecto de Python tiene un archivo setup.py, también puede usar este comando para compilar el paquete:
python setup.py sdist bdist_wheel
Creación de una fuente
Inicie sesión en su organización de Azure DevOps y vaya al proyecto.
Seleccione Artefactos y, a continuación, Crear feed.
Proporcione un Nombre para la fuente, elija la opción Visibilidad que define quién puede ver los paquetes, active Incluir paquetes de orígenes públicos comunes si desea incluir paquetes de orígenes como nuget.org o npmjs.com, y para Ámbito, decida si la fuente debe tener ámbito para el proyecto o toda la organización.
Seleccione Crear cuando haya terminado.
Inicie sesión en el servidor de Azure DevOps y vaya al proyecto.
Seleccione Artefactos y, a continuación, Crear feed.
Proporcione un Nombre para la fuente, elija la opción Visibilidad que define quién puede ver los paquetes, active Incluir paquetes de orígenes públicos comunes si desea incluir paquetes de orígenes como nuget.org o npmjs.com, y para Ámbito, decida si la fuente debe tener ámbito para el proyecto o toda la organización.
Seleccione Crear cuando haya terminado.
Seleccione Crear cuando haya terminado.
Inicie sesión en el servidor de Azure DevOps y vaya al proyecto.
Seleccione Artefactos y, a continuación, seleccione Nueva fuente.
En Nombre, escriba un nombre descriptivo para la fuente.
En Visibilidad, seleccione una opción para indicar quién puede ver los paquetes dentro de la fuente.
Si desea incluir paquetes de orígenes públicos, seleccione la opción Usar paquetes de orígenes públicos usando esta fuente.
Seleccione Crear cuando haya terminado.
Nota
De forma predeterminada, las fuentes recién creadas tienen el valor de Servicio de compilación de su proyecto establecido en Lector de fuente y ascendente (colaborador).
Conexión a una fuente
Inicie sesión en la organización de Azure DevOps y vaya al proyecto.
Seleccione Artefactos, seleccione su fuente en el menú desplegable y, a continuación, seleccione Conectar a la fuente.
Seleccione twine en la sección Python.
Si esta es la primera vez que utiliza Azure Artifacts con Twine, seleccione Obtener las herramientas y siga los pasos para instalar los requisitos necesarios.
Agregue un archivo pypirc al directorio principal y pegue el fragmento de código proporcionado. El archivo debe tener este aspecto:
[distutils] Index-servers = FEED_NAME [FEED_NAME] Repository = https://pkgs.dev.azure.com/ORGANIZATION_NAME/PROJECT_NAME/_packaging/FEED_NAME/pypi/upload/
Nota
Si el archivo .pypirc de ya contiene credenciales para el índice público de PyPI, se recomienda quitar la sección [pypi]
para evitar la publicación accidental de paquetes privados en PyPI.
Publicar paquetes
Ejecute este comando en el directorio del proyecto para crear distribuciones de origen y wheel:
python setup.py sdist bdist_wheel
Ejecute el siguiente comando para publicar el paquete. Usa la bandera -r FEED_NAME para asegurarte de que los paquetes privados no se publiquen accidentalmente en PyPI.
twine upload -r <FEED_NAME> dist/*
Instalación de paquetes
Ejecute este comando en el directorio del proyecto para instalar los paquetes:
pip install
Para instalar un paquete específico, ejecute el siguiente comando, reemplazando el marcador de posición por el nombre del paquete de la fuente.
pip install <PACKAGE_NAME>