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.
Use esta tarea para autenticar las cargas de distribuciones de Python mediante twine. Agregue -r FeedName/EndpointName --config-file $(PYPIRC_PATH)
al comando de carga de twine. Para las fuentes presentes en esta organización, use el nombre de fuente como repositorio (-r
). De lo contrario, use el nombre del punto de conexión definido en la conexión de servicio.
Sintaxis
# Python twine upload authenticate v1
# Authenticate for uploading Python distributions using twine. Add '-r FeedName/EndpointName --config-file $(PYPIRC_PATH)' to your twine upload command. For feeds present in this organization, use the feed name as the repository (-r). Otherwise, use the endpoint name defined in the service connection.
- task: TwineAuthenticate@1
inputs:
# Feeds and Authentication
#artifactFeed: # string. My feed name (select below).
#pythonUploadServiceConnection: # string. Feed from external organizations.
# Python twine upload authenticate v1
# Authenticate for uploading Python distributions using twine. Add '-r FeedName/EndpointName --config-file $(PYPIRC_PATH)' to your twine upload command. For feeds present in this organization, use the feed name as the repository (-r). Otherwise, use the endpoint name defined in the service connection.
- task: TwineAuthenticate@1
inputs:
# Feeds and Authentication
#artifactFeed: # string. My feed (select below).
#pythonUploadServiceConnection: # string. Feed from external organizations.
Entradas
artifactFeed
-
Mi nombre de fuente (seleccione a continuación)
string
.
Especifica el nombre de fuente del artefacto de Azure para autenticarse con twine. La fuente de autenticación debe estar presente en la organización. Para fuentes con ámbito de proyecto, use la sintaxis projectName/feedNameSelect
.
artifactFeed
-
Mi fuente (seleccione a continuación)
string
.
Especifica el nombre de fuente del artefacto de Azure para autenticarse con twine. La fuente de autenticación debe estar presente en la organización. Para fuentes con ámbito de proyecto, use la sintaxis projectName/feedNameSelect
.
fuente de pythonUploadServiceConnection
- de organizaciones externas
string
.
Una conexión de servicio de twine nombre de una organización externa para autenticarse con twine. Las credenciales almacenadas en el punto de conexión deben tener permisos de carga de paquetes.
Opciones de control de tareas
Todas las tareas tienen opciones de control además de sus entradas de tarea. Para obtener más información, consulte Opciones de control y propiedades de tareas comunes.
Variables de salida
Ninguno.
Observaciones
Proporciona twine
credenciales a una variable de entorno PYPIRC_PATH
para el ámbito de la compilación. Esto le permite publicar paquetes de Python para fuentes con twine
de la compilación.
- ¿Cuándo en mi canalización debo ejecutar esta tarea?
- Mi agente está detrás de un proxy web. ¿TwineAuthenticate configurará twine para usar mi proxy?
- Mi canalización debe acceder a una fuente en un proyecto diferente
¿Cuándo debo ejecutar esta tarea en mi canalización?
Esta tarea debe ejecutarse antes de usar twine para cargar distribuciones de Python en un origen de paquete autenticado, como Azure Artifacts. No hay ningún otro requisito de ordenación. Varias invocaciones de esta tarea no apilan las credenciales. Cada ejecución de tareas borrará las credenciales almacenadas anteriormente.
Mi agente está detrás de un proxy web. ¿TwineAuthenticate configurará twine para usar mi proxy?
No. Aunque esta tarea funcionará detrás de un proxy web de que el agente se ha configurado para usar, no configura twine para usar el proxy.
Mi canalización debe acceder a una fuente en un proyecto diferente
Si la canalización se ejecuta en un proyecto diferente al que hospeda la fuente, debe configurar el otro proyecto para conceder acceso de lectura y escritura al servicio de compilación. Consulte Permisos de paquete en Azure Pipelines para más información.
Ejemplos
En los ejemplos siguientes se muestra cómo publicar la distribución de Python en la fuente de Azure Artifacts y el registro oficial de Python.
- Publicación de la distribución de Python en la fuente de Azure Artifacts
- Publicación de la distribución de Python en el registro oficial de Python
Publicación de la distribución de Python en la fuente de Azure Artifacts
En este ejemplo, se establece la autenticación para publicar en una fuente privada de Azure Artifacts. La tarea de autenticación crea un archivo .pypirc
que contiene las credenciales de autenticación necesarias para publicar una distribución en la fuente.
# Install python distributions like wheel, twine etc
- script: |
pip install wheel
pip install twine
# Build the python distribution from source
- script: |
python setup.py bdist_wheel
- task: TwineAuthenticate@1
displayName: Twine Authenticate
inputs:
# In this case, name of the feed is 'myTestFeed' in the project 'myTestProject'. Project is needed because the feed is project scoped.
artifactFeed: myTestProject/myTestFeed
# Use command line script to 'twine upload', use -r to pass the repository name and --config-file to pass the environment variable set by the authenticate task.
- script: |
python -m twine upload -r myTestFeed --config-file $(PYPIRC_PATH) dist/*.whl
La entrada artifactFeed
contendrá el proyecto y el nombre de la fuente si la fuente tiene el ámbito del proyecto. Si la fuente tiene ámbito de organización, solo se debe proporcionar el nombre de la fuente.
Más información.
Publicación de la distribución de Python en el registro oficial de Python
En este ejemplo, estamos configurando la autenticación para publicar en el registro oficial de Python. Cree una entrada de conexión del servicio twine de para pypi. La tarea de autenticación usa esa conexión de servicio para crear un archivo .pypirc
que contenga las credenciales de autenticación necesarias para publicar la distribución.
# Install python distributions like wheel, twine etc
- script: |
pip install wheel
pip install twine
# Build the python distribution from source
- script: |
python setup.py bdist_wheel
- task: TwineAuthenticate@1
displayName: Twine Authenticate
inputs:
# In this case, name of the service connection is "pypitest".
pythonUploadServiceConnection: pypitest
# Use command line script to 'twine upload', use -r to pass the repository name and --config-file to pass the environment variable set by the authenticate task.
- script: |
python -m twine upload -r "pypitest" --config-file $(PYPIRC_PATH) dist/*.whl
Requisitos
Requisito | Descripción |
---|---|
Tipos de canalización | YAML, compilación clásica, versión clásica |
Se ejecuta en | Agente, DeploymentGroup |
demandas | Ninguno |
funcionalidades de |
Esta tarea no satisface ninguna demanda de tareas posteriores en el trabajo. |
restricciones de comandos | Cualquiera |
variables settable | Cualquiera |
Versión del agente | 2.144.0 o superior |
Categoría de tarea | Paquete |
Requisito | Descripción |
---|---|
Tipos de canalización | YAML, compilación clásica, versión clásica |
Se ejecuta en | Agente, DeploymentGroup |
demandas | Ninguno |
funcionalidades de |
Esta tarea no satisface ninguna demanda de tareas posteriores en el trabajo. |
restricciones de comandos | Cualquiera |
variables settable | Cualquiera |
Versión del agente | 2.120.0 o superior |
Categoría de tarea | Paquete |