Введение
Я устанавливаю взаимодействие между dotnet
инструментом и пользовательским NuGet
сервером пакетов, и мне нужен весь потенциал
Источники
Makefile
, используемый для тестирования выглядит как:
name:=DemoLib
version:=0.1.0
server:=http://localhost:9902/v3/index.json
key:=F143tEizkkeHQr7/cvwCjQ==
clear-cache:
dotnet nuget locals http-cache --clear
pack:
dotnet pack $(name) --output . --include-symbols --include-source -p:PackageVersion=$(version) -p:SymbolPackageFormat=snupkg
publish: clear-cache
dotnet nuget push $(name)/$(name).$(version).nupkg --source $(server) --api-key $(key)
unpublish: clear-cache
dotnet nuget delete $(name) $(version) --source $(server) --api-key $(key) --non-interactive
install: clear-cache
rm -rf ~/.nuget/packages/demolib*
dotnet restore App --verbosity d
dotnet build App
dotnet run -p App
nuget.config:
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<packageSources>
<clear />
<add key="annium" value="http://localhost:9902/v3/index.json" />
<add key="nuget" value="https://api.nuget.org/v3/index.json" />
</packageSources>
</configuration>
DemoLib.csproj:
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>netcoreapp2.2</TargetFramework>
<DebugType>Portable</DebugType>
<OutputType>Library</OutputType>
</PropertyGroup>
</Project>
App.csproj:
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>netcoreapp2.2</TargetFramework>
<DebugType>Portable</DebugType>
<OutputType>Exe</OutputType>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="DemoLib" Version="0.1.0" />
</ItemGroup>
</Project>
Вопросы
- Что изменить в процессе упаковки и восстановления, чтобы символы загружались? (Использование VS Code для разработки)
- Как изменить команды /
nuget.config
, чтобы NuGet отправлял заголовок X-NuGet-ApiKey
для регистрации, версий и URL-адресов загрузок?
P.S
- Еще не пробовал
<DebugType>Embedded</DebugType>
. Это правильный путь?
- Пробовал с использованием
ClearTextPassword
и nuget setapikey
. Но без эффекта.