Как опубликовать пакеты NuGet в реестре пакетов GitHub с помощью dotnet на Mac?
Документация не полная, и в настоящее время я не могу использовать или публиковать пакет для GPR с помощью dotnet на Mac. Любая помощь будет полезна
3 ответа
Далеко от идеала, и я еще не тестировал на Mac, но он работал на Linux
Публиковать
- Включите функцию GPR в настройках GitBHub
- Зайдите в github и добавьте ТОКЕН с доступом на чтение / запись GPR
Добавить источник локально
nuget source Add -Name "GitHub" \ -Source "https://nuget.pkg.github.com/MY_ACCOUNT/index.json"
Установить ключ API
nuget setApiKey $TOKEN \ -Source "https://nuget.pkg.github.com/MY_ACCOUNT/index.json"
Пакет push
nuget push "my.lib.nupkg" -Source "GitHub"
Установить пакет
nuget install my.lib -pre # '-pre' because of alpha, if alpha
Примечание: 'nuget install' загружает пакет nuget Он не добавляет его в проект. 'dotnet' не может его найти Все равно сделайте это, чтобы он был кэширован в `~/.nuget/packages` Относительный загруженный пакет `./ Project` можно удалить
Ссылка вручную:
Добавьте "новый источник" в nuget.config.
<add key="GitHub" value="https://nuget.pkg.github.com/MY_ACCOUNT/index.json" />
конфигурация nuget может быть
- './nuget.config'
- '~ /.nuget / NuGet / nuget.config'
Добавить в проект:
dotnet add package my.lib \
-v 1.0.0-alpha \
-n # don't download, it can't handle authentication
В качестве альтернативы:
отредактируйте ссылку на пакет проекта.
<PackageReference Include="my.lib" Version="1.0.0-alpha" />
В заключение:
dotnet restore
Вам нужно будет сделать HTTP-вызов самостоятельно (другие шаги для краткости опущены):
jobs:
continuous-integration:
runs-on: ubuntu-latest
steps:
- name: push
run: |
for f in ./packages/*.nupkg
do
curl -vX PUT -u "<YOUR USER NAME>:${{ secrets.GITHUB_TOKEN }}" -F package=@$f https://nuget.pkg.github.com/<YOUR USER NAME>/
done
if: github.event_name == 'push'
Как вы можете видеть по этой ссылке на вопрос сообщества github, dotnet nuget в настоящее время не поддерживается GPR, и вам, скорее, придется использовать nuget с Mono или публиковать из Windows.
Я надеюсь, что они исправят это в ближайшее время сами, это полностью мешает мне воспользоваться георадаром.