при указании файла nuspec вместо папок lib выводятся папки сборки пакета dotnet - PullRequest
0 голосов
/ 25 ноября 2018

Я пытаюсь добавить шаг к нашему процессу CI, который представляет собой скрипт powershell, который автоматически упаковывает и отправляет пакет nuget для проекта .NET standard 2.0 после того, как предыдущий шаг его собрал.Первоначальная команда, которую я использовал, была:

dotnet pack $project.csproj -c $configuration -p:PackageVersion=$version

Это дало мне точный результат проекта, который я хотел.Как видно здесь: пакет dotnet без указания nuspec.

Однако в наших предыдущих пакетах nuget у нас есть важные файлы nuspec, и пакет dotnet по умолчанию его не подберет, даже если оннаходится в том же каталоге, что и файл проекта, он будет сгенерирован по умолчанию.Чтобы обойти эту проблему, я обнаружил, что вы можете указать файл nuspec и обновил команду следующим образом:

dotnet pack $project.csproj -c $configuration -p:PackageVersion=$version -p:NuspecFile=$project.nuspec

Теперь это правильно добавит нужный файл nuspec, но теперь nupkg имеет нежелательное содержимое безПапка lib, похоже, является результатом построения проекта.Как видно здесь: пакет dotnet с указанным файлом nuspec .

  1. Есть ли способ получить желаемый вывод из первой команды и файл nuspec, указанный во второй команде, просто черезкоманда dotnet pack?Я попробовал --no-build и подробное ведение подробных журналов, чтобы получить больше информации, но пока не повезло.
  2. Есть ли альтернатива файлу nuspec, которая бы достигла такого же эффекта, например, указание дополнительной информации вфайл проекта и удаление файла nuspec полностью?

Спасибо!

1 Ответ

0 голосов
/ 26 ноября 2018

Мне удалось решить эту проблему, просто устранив необходимость в файле nuspec.Все необходимое можно сделать в csproj, который без проблем преобразуется в файл nuspec, сгенерированный пакетом dotnet.

...