Condividi tramite


Usare pacchetti dall'indice dei pacchetti Python (PyPI)

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

Usando Azure Artifacts, gli sviluppatori possono pubblicare e usare pacchetti da feed di Azure Artifacts e registri esterni, ad esempio pypi.org. Questo articolo illustra come configurare il progetto e usare la riga di comando per usare in modo efficiente i pacchetti Python da PyPI.

In questo articolo si apprenderà come:

  • Abilitare le origini upstream per il feed
  • Aggiungere PyPI come origine upstream
  • Configurare il progetto
  • Installare pacchetti dall'indice dei pacchetti Python

Prerequisiti

  • Un'organizzazione Di Azure DevOps e un progetto. Creare un'organizzazione o un progetto, se non è già stato fatto.

  • Feed di Azure Artifacts.

  • Scaricare Python.

Abilitare le origini upstream

Se non è ancora stato creato un feed, seguire questa procedura per crearne uno nuovo. Assicurarsi di selezionare la casella relativa alle origini upstream per abilitare le origini upstream. Se si dispone già di un feed, passare al passaggio successivo per aggiungere PyPI come origine upstream.

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

  2. Selezionare Artefatti e quindi crea feed per creare un nuovo feed.

  3. Immettere un nome descrittivo per il feed e definirne la visibilità (che indica chi può visualizzare i pacchetti all'interno del feed). Specificare l'ambito del feed e quindi selezionare la casella di controllo Origini upstream per includere i pacchetti dai registri pubblici.

  4. Al termine, fare clic su Crea.

    A screenshot showing how to create a need feed.

Aggiungere PyPI upstream

Se è stata selezionata la casella di controllo origini upstream durante la creazione del feed, PyPI dovrebbe essere stato incluso automaticamente come origine upstream. In caso contrario, è possibile aggiungerlo manualmente seguendo questa procedura:

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

  2. Selezionare Artefatti e quindi selezionare l'icona a forma di ingranaggio gear icon per passare a Feed Impostazioni.

  3. Selezionare Origini upstream e quindi Aggiungi upstream per aggiungere una nuova origine upstream.

  4. Selezionare Origine pubblica e quindi Selezionare PyPI (https://pypi.org/) dal menu a discesa.

  5. Selezionare Salva al termine e quindi selezionare Salva ancora una volta nell'angolo in alto a destra per salvare le modifiche.

Eseguire l'autenticazione con il feed

  1. Assicurarsi di aver scaricato Python e quindi eseguire il comando seguente per aggiornare la gestione pacchetti Python:

    python -m pip install --upgrade pip
    
  2. Eseguire il comando seguente per installare il keyring di Azure Artifacts:

    pip install keyring artifacts-keyring
    
  3. Creare un token di accesso personale con ambito di lettura pacchetti> per l'autenticazione con Azure DevOps. La prima volta che ci si connette ad Azure DevOps, è necessario immettere le credenziali quando richiesto. Specificare il nome utente (qualsiasi stringa) e il token di accesso personale nei campi designati. Queste credenziali verranno memorizzate nella cache in locale e usate automaticamente per accedere alla successiva volta che si usa il servizio.

  4. Passare alla cartella del progetto e quindi eseguire il comando seguente per creare un nuovo ambiente virtuale:

    python -m venv <VIRTUAL_ENVIRONMENT_NAME>
    
  5. Creare un nuovo file pip.ini (Windows) o un file pip.conf (Mac/Linux) nell'ambiente virtuale e quindi incollare il frammento di codice seguente nel file. Assicurarsi di sostituire i segnaposto con le informazioni appropriate e prestare attenzione a non eseguire il commit di questo file in un repository pubblico perché contiene il token di accesso personale.

    • Feed con ambito progetto:

      [global]
      extra-index-url=https://<FEED_NAME>:<YOUR_PERSONAL_ACCESS_TOKEN>@pkgs.dev.azure.com/<ORGANIZATION_NAME>/<PROJECT_NAME>/_packaging/<FEED_NAME>/pypi/simple/
      
    • Feed con ambito organizzazione:

      [global]
      extra-index-url=https://<FEED_NAME>:<YOUR_PERSONAL_ACCESS_TOKEN>@pkgs.dev.azure.com/<ORGANIZATION_NAME>/_packaging/<FEED_NAME>/pypi/simple/
      

Installare pacchetti da PyPI

Ora che il progetto è stato configurato per l'autenticazione con il feed, è possibile iniziare a installare i pacchetti dall'upstream pyPI. In questo esempio si installerà Flask:

  1. In una finestra del prompt dei comandi passare alla cartella del progetto ed eseguire il comando seguente per attivare l'ambiente virtuale. Sostituire il segnaposto con il nome dell'ambiente virtuale creato in precedenza:

    <YOUR_VIRTUAL_ENVIRONMENT_NAME>/Scripts/Activate.ps1
    
  2. Eseguire il comando seguente per controllare i pacchetti installati nell'ambiente virtuale:

    pip list
    
  3. Eseguire il comando seguente per installare Flask.

    pip install -U Flask
    
  4. Dopo aver installato il pacchetto, Azure Artifacts salverà una copia di questo pacchetto nel feed. Il pacchetto deve essere disponibile nel feed, come illustrato nello screenshot seguente.

    A screenshot showing packages installed from PyPI upstream.