Condividi tramite


Introduzione ai pacchetti Python in Azure Artifacts

Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019

Con Azure Artifacts è possibile pubblicare e scaricare pacchetti da feed e registri pubblici, ad esempio PyPi. Questa guida introduttiva illustra come creare un feed, configurare il progetto e gestire i pacchetti Python nel feed di Azure Artifacts. Questo articolo illustra come:

  • Creare un nuovo feed.
  • Autenticati con il tuo feed.
  • Pubblicare pacchetti Python.
  • Installare i pacchetti dal tuo feed.

Prerequisiti

  • Crea un'organizzazione Azure DevOps e un progetto , se non l'hai già fatto.

  • Scaricare e installare Python.

Ottenere il codice

  1. Se non si ha un progetto Python personalizzato, è possibile usare il progetto Python di esempio seguente:

    https://github.com/microsoft/python-package-template
    
  2. Per creare la ruota e la distribuzione di origine, esegui i comandi seguenti nella directory del progetto:

    pip install --upgrade build
    python -m build
    
  3. Se il progetto Python ha un file setup.py, è anche possibile usare questo comando per compilare il pacchetto:

    python setup.py sdist bdist_wheel
    

Creare un feed

  1. Accedere all'organizzazione di Azure DevOps e passare al progetto.

  2. Selezionare Artifactse quindi selezionare Create Feed.

  3. Fornire un Nome per il feed, scegliere l'opzione Visibilità che definisce chi può visualizzare i pacchetti, selezionare Includi pacchetti da origini pubbliche comuni se si desidera includere pacchetti da origini come nuget.org o npmjs.com, e per Ambito, decidere se il feed deve essere definito come ambito per il progetto o l'intera organizzazione.

  4. Al termine, selezionare Crea.

    Screenshot che mostra le selezioni per la creazione di un nuovo feed in Azure DevOps Services.

  1. Accedere al server Azure DevOps e quindi passare al progetto.

  2. Selezionare Artifactse quindi selezionare Create Feed.

  3. Specificare un Nome per il feed, scegliere l'opzione Visibilità che definisce chi può visualizzare i pacchetti, selezionare Includi pacchetti da origini pubbliche comuni se si desidera includere pacchetti da origini come nuget.org o npmjs.come per Ambito, decidere se il feed debba essere limitato al progetto o all'intera organizzazione.

  1. Al termine, selezionare Crea.

    Screenshot che mostra le selezioni per la creazione di un nuovo feed in Azure DevOps 2022.

  1. Al termine, selezionare Crea.

    Screenshot che mostra le selezioni per la creazione di un nuovo feed in Azure DevOps 2020.

  1. Accedere al server Azure DevOps e quindi passare al progetto.

  2. Selezionare Artifactse quindi selezionare Nuovo feed.

  3. Per Nomeimmettere un nome descrittivo per il feed.

    Per Visibility, selezionare un'opzione per indicare chi può visualizzare i pacchetti nel feed.

    Se si desidera includere pacchetti da origini pubbliche, selezionare l'opzione Usa pacchetti da origini pubbliche tramite questo feed.

  4. Al termine, selezionare Crea.

    Screenshot che mostra le selezioni per la creazione di un nuovo feed in Azure DevOps 2019.

Nota

Per impostazione predefinita, i feed appena creati hanno il valore Build Service del progetto impostato su Feed e Upstream Reader (Collaboratore).

Connettersi a un feed

  1. Accedere all'organizzazione di Azure DevOps e quindi passare al progetto.

  2. Selezionare Artefatti, selezionare il feed dal menu a discesa e quindi selezionare Connetti al feed.

  3. Selezionare spago sotto la sezione Python.

  4. Se questa è la prima volta che usi Azure Artifacts con twine, seleziona Ottieni gli strumenti e segui i passaggi per installare i prerequisiti.

  5. Aggiungere un file pypirc alla tua directory home e incolla il frammento specificato. Il file dovrebbe essere simile al seguente:

    [distutils]
    Index-servers =
        FEED_NAME
    
    [FEED_NAME]
    Repository = https://pkgs.dev.azure.com/ORGANIZATION_NAME/PROJECT_NAME/_packaging/FEED_NAME/pypi/upload/
    

Nota

Se il file di con estensione pypirc contiene già le credenziali per l'indice PyPI pubblico, è consigliabile rimuovere la sezione [pypi] per impedire la pubblicazione accidentale di pacchetti privati in PyPI.

Pubblicare pacchetti

  1. Eseguire questo comando nella directory del progetto per creare distribuzioni di origine e rotellina:

    python setup.py sdist bdist_wheel
    
    
  2. Eseguire il comando seguente per pubblicare il pacchetto. Usare il flag -r FEED_NAME per garantire che i pacchetti privati non vengano accidentalmente pubblicati su PyPI.

    twine upload -r <FEED_NAME> dist/*
    

Installare i pacchetti

  1. Eseguire questo comando nella directory del progetto per installare i pacchetti:

    pip install
    
  2. Per installare un pacchetto specifico, eseguire il comando seguente, sostituendo il segnaposto con il nome del pacchetto dal feed.

    pip install <PACKAGE_NAME>
    

Passaggi successivi