Удаление и восстановление пакетов
Azure DevOps Services | Azure DevOps Server 2022 — Azure DevOps Server 2019
Артефакты Azure безопасно хранят различные типы пакетов в веб-канале, независимо от того, опубликовали ли вы их непосредственно или сохранили из вышестоящий источников. Так как старые версии пакетов становятся менее актуальными, их можно удалить с помощью ручного удаления или использования политик хранения. В этой статье вы узнаете, как выполнять следующие задачи.
- Удаление пакетов из веб-канала.
- Настройте политики хранения.
- Вручную удалите пакеты безвозвратно.
- Восстановление недавно удаленных пакетов.
Примечание.
Чтобы удалить или восстановить пакеты или настроить политики хранения, необходимо быть владельцем канала.
Удаление пакетов
В Azure Artifacts пакеты неизменяемы. После публикации пакета в веб-канале его номер версии зарезервирован окончательно. Даже если удалить его из веб-канала, вы не можете опубликовать новый пакет с тем же номером версии.
Примечание.
Вы должны быть издателем веб-канала (участником), чтобы отменить список пакета и владельца веб-канала, чтобы удалить его.
Существует два доступных варианта удаления пакета NuGet из веб-канала, отмены списка и удаления. Отмена списка версий пакета скрывает его из результатов поиска в веб-каналах Azure Artifacts и на NuGet.org, при удалении версии пакета отправляется в корзину и делает его недоступным для установки.
Войдите в организацию Azure DevOps и перейдите к проекту.
Выберите артефакты и выберите веб-канал в раскрывающемся меню.
Выберите пакет, который вы хотите удалить, а затем выберите "Отменить список " или "Удалить".
Отмена списка пакетов с помощью NuGet.exe
Войдите в организацию Azure DevOps и перейдите к проекту.
Выберите артефакты и выберите веб-канал в раскрывающемся меню.
Выберите Подключение для канала>NuGet.exe, а затем найдите и скопируйте URL-адрес источника пакета. Он должен выглядеть следующим образом: "https://pkgs.dev.azure.com/OrganizationName/ProjectName/_packaging/FeedName/nuget/v3/index.json".
Выполните следующую команду, чтобы отменить список пакета NuGet:
nuget.exe delete <PACKAGE_NAME> <PACKAGE_VERSION> -Source <PACKAGE_SOURCE_URL> -ApiKey <KEY>
Примечание.
Azure DevOps и Visual Studio Team Foundation Server интерпретируют nuget.exe delete
команду как операцию отмены списка. Чтобы удалить пакет, необходимо использовать REST API или удалить его вручную из веб-интерфейса.
Удаление пакетов безвозвратно
Пакеты, помещенные в корзину , окончательно удаляются через 30 дней, но они продолжают вносить свой вклад в затраты на хранение в течение этого времени. Если вы хотите удалить их до этого периода, их можно удалить вручную из корзины, выполнив следующие действия:
Войдите в организацию Azure DevOps и перейдите к проекту.
Выберите артефакты и выберите веб-канал в раскрывающемся меню.
Выберите корзину в правом верхнем углу.
Выберите пакет, который нужно удалить окончательно, а затем нажмите кнопку " Окончательно удалить".
Нажмите кнопку " Окончательно удалить ", чтобы подтвердить свое решение. Пакет будет удален окончательно.
Автоматическое удаление пакетов с помощью политик хранения
Количество версий для каждого пакета, размещенного в веб-канале, может быстро увеличиваться. Чтобы освободить место в хранилище, можно настроить политики хранения для автоматического удаления старых пакетов.
Если вы хотите сохранить пакет на неопределенный срок, его можно повысить до представления. Пакеты, повышенные до представления, освобождаются от политик хранения и не будут подлежать удалению. Чтобы настроить политики хранения для веб-канала, выполните следующие действия.
Примечание.
Артефакты Azure не поддерживают понижение пакета.
Войдите в организацию Azure DevOps и перейдите к проекту.
Выберите артефакты и выберите значок шестеренки в правом верхнем углу, чтобы получить доступ к параметрам веб-канала.
Выберите сведения о веб-канале, а затем проверка папку "Включить хранение пакетов" проверка box. Укажите значения как для максимального числа версий на пакет, так и дней, чтобы сохранить недавно загруженные пакеты.
Максимальное количество версий для каждого пакета: количество версий для каждого пакета, которое требуется сохранить.
Дни хранения недавно загруженных пакетов: пакеты будут удалены только в том случае, если они не были скачаны в течение указанного количества дней, указанных здесь.
Выберите Сохранить, когда вы закончите.
Примечание.
При включении политик хранения версия пакета будет удалена при выполнении обоих следующих условий:
- Число опубликованных версий достигает максимального числа версий на пакет.
- Версия этого пакета не была скачана в течение периода, указанного в днях, чтобы сохранить недавно загруженные пакеты.
Восстановление удаленных пакетов
Удаленные пакеты остаются в корзине в течение 30 дней. После этого периода они будут окончательно удалены. Для восстановления удаленных пакетов необходимо быть владельцем канала.
Войдите в организацию Azure DevOps и перейдите к проекту.
Выберите артефакты и выберите корзину.
Выберите пакет и нажмите кнопку "Восстановить".
Нажмите кнопку "Восстановить еще раз", чтобы подтвердить свое решение.
Q&A
Вопрос. В чем разница между нерекомендуемой, unlist, Yank и Delete a package version?
Ответ. Нерекомендуемая применяется к пакетам npm, Yank применяется к пакетам Cargo, а unlist применяется к пакетам NuGet. Вы также можете удалить любой из типов пакетов (npm, Maven, Python, Cargo и универсальные пакеты):
Нерекомендуемая версия пакета (npm): при отмене версии пакета в метаданные пакета добавляется предупреждение. Артефакты Azure и большинство клиентов npm будут отображать это предупреждение при просмотре или установке пакета.
Отмена списка (NuGet): отмена списка версий пакета скрывает его из результатов поиска в веб-каналах Azure Artifacts и NuGet.org.
Yank (Cargo): Yanking версия пакета помечает его как устаревшую или нерекомендуемую, отвлекая его использование, но не удаляет пакет.
Удаление: удаление версии пакета делает его недоступным для установки. Удаленные пакеты можно восстановить из корзины в течение 30 дней после удаления. После этого периода пакеты будут окончательно удалены.
Вопрос. Что происходит с старыми или существующими пакетами при включении политик хранения?
Ответ. Старые или существующие пакеты будут обратимо удалены и перемещены в корзину. Задание удаления выполняется один раз в день, но после первого включения политики может возникнуть начальная задержка из-за притока пакетов.
Пакеты остаются в корзине в течение 30 дней, прежде чем будут окончательно удалены. Чтобы удалить пакеты из оплачиваемого хранилища, удалите их вручную с использованием пользовательского интерфейса или REST API до истечения 30 дней.
Вопрос. Сколько времени требуется для обновления оплачиваемого объема хранилища после удаления артефактов?
Ответ. Как правило, потребление хранилища должно обновляться в течение 24 часов, хотя в некоторых случаях может потребоваться до 48 часов для отражения изменений. Использование артефактов на странице выставления счетов организации обновляется один раз в день. Однако страница артефакта служба хранилища обновляется чаще, что может привести к незначительным несоответствиям между сведениями, отображаемыми на двух страницах.