Как разместить частный репозиторий WinGet на локальном сервере?

Как разместить частный репозиторий WinGet на локальном сервере?

Я хотел бы использоватьwingetдля управления приложениями в моей компании, и я хотел бы настроить свой собственныйисточникна одном из моих локальных серверов Windows.

Я нашелэталонная реализациякоторый, однако, похоже, требует использования Azure / Cosmos DB, что мне не нужно. Я хотел бы иметь все это в IIS / SQL Server,как если бы вы были с шоколадным

Есть ли способ это сделать?

решение1

Вы добавляете источник, это может быть любой адрес http/https (но в настоящее время не unc-путь к \server\share). Структура должна соответствовать той же структуре папки манифеста, что и у Microsoft github: https://github.com/microsoft/winget-pkgs/tree/master/manifests

[править] Я сам пробовал это в последние несколько дней. Сертификат SSL на самом деле требуется (другие статьи, которые я читал, в которых говорилось, что http оказался неверным). В эталонной реализации указан CosmoDB, но есть эмулятор, который может работать локально вместо Azure. Фактически, любая реализация NoSQL, вероятно, подойдет, например, mongodb/Apache CouchDB. Большая часть остального требует аренды и подписки Azure. Возможно, можно будет разместить самостоятельно и вручную переписать предоставленный код VS, но в настоящее время для этого нет документации или эталонной реализации, поэтому я не думаю, что это практическое решение для использования в производстве, к сожалению. Мы пока воздержимся и придерживаемся chocolatey (который поддерживает http(s) и пути к файлам UNC и т. д.), пока ситуация не улучшится.

решение2

Вы можете использоватьwinget.Pro, реализация частного репозитория winget с открытым исходным кодом, не требующая Azure. Может работать в Docker или на Linux VPS. На данный момент не поддерживает IIS / SQL Server. Вместо этого он хранит информацию о версии в базе данных SQLite и файлах локально или в хранилище, совместимом с S3.

Связанный контент