Condividi tramite


Eliminare e ripristinare i pacchetti

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

Azure Artifacts archivia in modo sicuro vari tipi di pacchetto in un feed, sia pubblicati direttamente che salvati da origini upstream. Man mano che le versioni precedenti dei pacchetti diventano meno rilevanti, è possibile rimuoverle manualmente o usando i criteri di conservazione per liberare spazio e ridurre i costi.

Prerequisiti

Prodotto Requisiti
Azure DevOps - Un'organizzazione di Azure DevOps.
- Un progetto Azure DevOps .
- Un feed di Azure Artifacts.
Autorizzazioni - :
    - È necessario essere un Proprietario del Feed per configurare criteri di conservazione, eliminare pacchetti e feed o ripristinare i pacchetti dal cestino.
    - È necessario essere un Feed Publisher (Collaboratore) o superiore per rimuovere dall'elenco, deprecare o ritirare pacchetti.

Eliminare pacchetti

In Azure Artifacts i pacchetti non sono modificabili, ovvero i relativi numeri di versione non possono essere riutilizzati o modificati dopo la pubblicazione. Dopo aver pubblicato un pacchetto in un feed, il numero di versione è riservato in modo permanente. Anche se si elimina il pacchetto, la versione rimane registrata nella cronologia del feed e non è possibile pubblicare un nuovo pacchetto con lo stesso numero di versione.

Esistono due modi per rimuovere un pacchetto NuGet da un feed: Unlist e Elimina. L'annullamento dell'elenco di una versione del pacchetto lo nasconde dai risultati della ricerca nei feed di Azure Artifacts e in NuGet.org. L'eliminazione di una versione del pacchetto lo sposta nel Cestino e lo rende non disponibile per l'installazione.

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

  2. Selezionare Elementi e quindi selezionare il tuo feed dal menu a tendina.

  3. Selezionare il pacchetto da eliminare, quindi selezionare Unlist per nasconderlo dai risultati della ricerca nei feed di Azure Artifacts e in NuGet.orgoppure Elimina per spostarlo nel Cestino.

    Screenshot che mostra come eliminare o rimuovere un pacchetto NuGet in Azure Artifacts.

Rimuovere l'elenco dei pacchetti (interfaccia della riga di comando)

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

  2. Selezionare Artefattie quindi selezionare il feed dal menu a discesa.

  3. Selezionare Connetti al feed>NuGet.exe, quindi trovare e copiare l'URL di origine pacchetto . Deve seguire questo formato: https://pkgs.dev.azure.com/OrganizationName/ProjectName/_packaging/FeedName/nuget/v3/index.json.

  4. Eseguire il comando seguente per annullare l'elenco del pacchetto. L'argomento ApiKey è obbligatorio, ma poiché viene considerato un segnaposto durante la pubblicazione in un feed di Azure Artifacts, puoi utilizzare qualunque valore di stringa.

    nuget.exe delete <PACKAGE_NAME> <PACKAGE_VERSION> -Source <PACKAGE_SOURCE_URL> -ApiKey <ANY_STRING>
    

Importante

Azure DevOps interpreta il comando nuget.exe delete come operazione di annullamento dell'elenco. Ciò significa che l'esecuzione del comando non elimina il pacchetto, ma lo nasconde dai risultati della ricerca nei feed di Azure Artifacts e in NuGet.org. Per eliminare un pacchetto dal feed, è necessario usare l'API REST o eliminarla manualmente dall'interfaccia Web.

Eliminare i pacchetti in modo permanente

I pacchetti nel Cestino vengono eliminati automaticamente dopo 30 giorni, ma vengono comunque conteggiati per l'utilizzo dello spazio di archiviazione durante questo periodo. Per rimuoverli prima, è possibile eliminarli manualmente dal Cestino seguendo questa procedura:

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

  2. Selezionare Artefattie quindi selezionare il tuo feed dal menu a discesa.

  3. Nell'angolo superiore destro selezionare Cestino.

  4. Selezionare il pacchetto da eliminare definitivamente, quindi selezionare Elimina definitivamente.

    Screenshot che mostra come eliminare definitivamente un pacchetto in Azure Artifacts.

  5. Selezionare di nuovo Elimina definitivamente per confermare la decisione. Il pacchetto verrà eliminato definitivamente.

    Screenshot che mostra un messaggio di conferma prima di eliminare definitivamente un pacchetto.

Eliminare automaticamente i pacchetti con i criteri di conservazione

Man mano che aumenta il numero di versioni del pacchetto nel feed, l'utilizzo dell'archiviazione può aumentare rapidamente. È possibile configurare i criteri di conservazione per eliminare automaticamente le versioni precedenti dei pacchetti e liberare spazio.

Se è necessario mantenere un pacchetto a tempo indeterminato, alzarlo di livello a una visualizzazione . I pacchetti in una vista sono esentati dai criteri di conservazione e non saranno soggetti all'eliminazione. Per configurare i criteri di conservazione per il feed, seguire questa procedura:

Nota

Azure Artifacts non supporta l'abbassamento di livello dei pacchetti. Quando un pacchetto viene alzato di livello a una visualizzazione, non può essere ripristinato @local.

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

  2. Selezionare Artefatti, quindi selezionare l'icona a forma di ingranaggio nell'angolo superiore destro per accedere alle impostazioni del feed.

  3. Selezionare Dettagli feed, selezionare la casella di controllo Abilita conservazione dei pacchetti, e configurare le impostazioni seguenti:

    • Numero massimo di versioni per pacchetto: numero di versioni per ogni pacchetto che si desidera conservare.

    • Giorni per mantenere i pacchetti scaricati di recente: i pacchetti verranno eliminati solo se non sono stati scaricati per il numero specificato di giorni specificati qui.

  4. Al termine, seleziona Salva.

    Screenshot che mostra come configurare i criteri di conservazione per il feed.

Nota

Quando i criteri di conservazione sono abilitati, una versione del pacchetto verrà eliminata solo quando vengono soddisfatte entrambe le delle condizioni seguenti:

  • Il numero totale di versioni pubblicate raggiunge il numero massimo di versioni per pacchetto limite.
  • Una versione del pacchetto non è stata scaricata entro l'intervallo di tempo specificato in Giorni per mantenere i pacchetti scaricati di recente.

Ripristinare i pacchetti eliminati

I pacchetti eliminati rimangono nel Cestino per 30 giorni. Dopo questo periodo, vengono eliminati definitivamente. Per ripristinare un pacchetto dal Cestino, seguire questa procedura:

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

  2. Selezionare Artefatti, quindi selezionare Cestino.

  3. Selezionare il pacchetto e quindi selezionare Ripristina.

  4. Selezionare Ripristina ancora una volta per confermare la decisione.

    Screenshot che mostra come ripristinare i pacchetti eliminati.

Domande e risposte

D: Qual è la differenza tra Deprecare, Rimuovere dalla lista, Sopprimeree Eliminare una versione del pacchetto?

R: Deprecate si applica ai pacchetti npm, Yank si applica ai pacchetti Cargo mentre l' Unlist si applica ai pacchetti NuGet. È possibile Eliminare qualsiasi tipo di pacchetto (npm, Maven, Python, Cargo e Pacchetti universali) dal feed di Azure Artifacts.

  • Deprecate (npm): quando si depreca una versione del pacchetto, viene aggiunto un messaggio di avviso ai metadati del pacchetto. Azure Artifacts e la maggior parte dei client npm visualizzeranno questo messaggio di avviso ogni volta che il pacchetto viene visualizzato o installato.

  • Unlist (NuGet): l'annullamento dell'elenco di una versione del pacchetto lo nasconde dai risultati della ricerca nei feed di Azure Artifacts e in NuGet.org.

  • Yank (Cargo): *Yanking* una versione del pacchetto lo contrassegna come obsoleto o deprecato, sconsigliandone l'uso, ma non elimina il pacchetto.

  • Elimina: l'eliminazione di una versione del pacchetto lo sposta nel Cestino, rendendolo non disponibile per l'installazione. Gli pacchetti eliminati possono essere ripristinati dal cestino entro 30 giorni. Dopo questo periodo, verranno eliminati definitivamente.

D: Come si eliminano tutte le versioni del pacchetto?

R: Per eliminare tutte le versioni di un pacchetto, selezionare il pacchetto dal feed, selezionare Versionie quindi selezionare la casella di controllo accanto a versione. Questa operazione selezionerà tutte le versioni di quel pacchetto nel tuo feed. Selezionare Eliminae quindi selezionare Elimina ancora una volta per confermare.

Screenshot che mostra come eliminare tutte le versioni da un feed.

D: Cosa accade con i pacchetti obsoleti o esistenti quando si abilitano i criteri di conservazione?

A: I pacchetti precedenti o esistenti verranno eliminati temporaneamente e spostati nel Cestino. Il processo di eliminazione viene eseguito una volta al giorno, ma potrebbe verificarsi un ritardo iniziale dopo l'attivazione del criterio per la prima volta a causa di un afflusso di pacchetti.

I pacchetti rimangono nel Cestino per 30 giorni prima dell'eliminazione definitiva. Per rimuovere i pacchetti dall'archiviazione fatturabile, è possibile eliminarli manualmente usando l'interfaccia utente Web o l'API REST prima del termine del periodo di 30 giorni.

D: Cosa accade se non si vogliono abilitare i criteri di conservazione?

R: I criteri di conservazione di Azure Artifacts sono progettati per facilitare la gestione delle dipendenze e semplificare la gestione dei costi di archiviazione. Se si sceglie di non abilitare i criteri di conservazione, sarà necessario gestire manualmente l'archiviazione, monitorare il consumo ed eliminare i pacchetti in base alle esigenze. Azure Artifacts offre 2 GiB di archiviazione gratuita per ogni organizzazione, che consente di valutare se il servizio è adatto al flusso di lavoro. Dopo aver superato il limite di archiviazione, non sarà possibile pubblicare nuovi artefatti a meno che non si configuri la fatturazione e aumentare il limite di archiviazione.

D: Quanto tempo è necessario per l'aggiornamento dell'importo di archiviazione fatturato dopo l'eliminazione degli artefatti?

R: In genere, il consumo di archiviazione deve essere aggiornato entro 24 ore. In alcuni casi, tuttavia, potrebbero essere necessarie fino a 48 ore prima che le modifiche vengano riflesse. L'utilizzo degli artefatti nella pagina di fatturazione dell'organizzazione viene aggiornato una volta al giorno, mentre la pagina Di archiviazione artefatti viene aggiornata più frequentemente, che potrebbe causare una leggera discrepanza tra i due.