Как правильно упаковать, отправить и восстановить пакет NuGet в Unix, чтобы загрузка с аутентификацией работала? - PullRequest
0 голосов
/ 16 января 2019

Введение

Я устанавливаю взаимодействие между 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>

Вопросы

  1. Что изменить в процессе упаковки и восстановления, чтобы символы загружались? (Использование VS Code для разработки)
  2. Как изменить команды / nuget.config, чтобы NuGet отправлял заголовок X-NuGet-ApiKey для регистрации, версий и URL-адресов загрузок?

P.S

  1. Еще не пробовал <DebugType>Embedded</DebugType>. Это правильный путь?
  2. Пробовал с использованием ClearTextPassword и nuget setapikey. Но без эффекта.
...