{{description>Рассматривается способ отмены публикации устаревшей или ненужной версии программы на собственном Chocolatey-сервере.}}
====== Отмена публикации версии программы на Chocolatey-сервере======
[[ http://wiki.mihanik.net/doku.php?id=программное_обеспечение:менеджеры_пакетов:chocolatey:отмена_публикации_версии_программы&do=export_pdf | Экспорт в PDF ]] ~~ODT~~
Дата создания: 2025/11/08 04:52 (C) mihanik
===== Дано =====
* Вы используете собственный **Chocolatey**-сервер
* На сервере опубликовано несколько версий некой программы
===== Надо =====
* Отменить публикацию некоторых устаревших/ненужных версий программы
* При необходимости удалить с сервера дистрибутивы программы
===== Решение =====
Договоримся, что все действия выполняются непосредственно на вашем Chocolatey-сервере.
==== Шаг 1 ====
Открываем командную строку от имени администратора.
Как это сделать можно посмотреть тут: [[операционные_системы:windows:работа_в_командной_строке:как_открыть_окно_командной_строки_windows_от_имени_администратора|Как открыть окно "Командной строки" Windows от имени Администратора]]
==== Шаг 2 ====
Устанавливаем **nuget.exe** (если ещё не установлен)
choco install nuget.commandline -y
==== Шаг 3 ====
**Удаляем ненужную версию программы из списка программ на Chocolatey-сервере.**
**Общий вид команды:**
nuget delete [PackageName] [Version] -Source [YourServerURL] -ApiKey [YourApiKey]
**Параметры команды:**
* [PackageName] - название вашей программы
* [Version] - версия для удаления
* -Source - URL вашего сервера Chocolatey
* -ApiKey - API ключ для аутентификации
ВАЖНО!!!
* Пакет не удаляется физически с сервера
* Он скрывается из публичного списка
* Доступен по прямой ссылке для тех, у кого есть URL
* Можно восстановить при необходимости
**Пример использования**
nuget delete "1c" "8.3.24.1667" -Source https://choco.mihanik.net/chocolatey -apikey бла-бла-бла
==== Шаг 4 ====
**Обновляем кеш на сервере.**
Для обновления кеша необходимо в браузере открыть ссылку https://[YourServerURL]/chocolatey/clear-cache
В моём случае это https://choco.mihanik.net/chocolatey/clear-cache
==== Шаг 5 ====
**Проверка результата.**
Для проверки результата можно использовать команду вида
choco search --exact [PackageName] --all --Source=[YourServerURL]
**Параметры команды:**
* [PackageName] - название вашей программы
* -Source - URL вашего сервера Chocolatey
**Пример использования**
choco search --exact 1c --all --Source=https://choco.mihanik.net/chocolatey
==== Шаг 6 ====
**Окончательное удаление ненужной версии программы с Chocolatey-сервера.**
- В обозревателе Windows открываем папку "**C:\tools\chocolatey.server\App_Data\Packages\PackageName**"
- Внутри папки **PackageName** располагаются папки с именами соответствующими версиям программы. Внутри каждой такой папки обычно 3 файла, описывающих версию программы. Удаляем папку с именем, соответствующим ненужной версии программы.
- Удаляем дистрибутив/установочный файл с вашего сервера.
Где именно вы расположили дистрибутив мне неизвестно. :-)
Я обычно располагаю дистрибутивы так: "**C:\tools\chocolatey.server\distr\PackageName\...**
==== Шаг 7 ====
Радуемся результату!!!
:-D
===== Источники =====
* https://docs.chocolatey.org/en-us/
* Просторы интернета.
[[#top|⇑ Наверх ⇑]]