Пакет NuGet для непрерывной интеграции TFS

Я пытаюсь сделать наш процесс сборки TFS для генерации пакетов NuGet из проектов нашего решения. Мы стремимся создать частный источник пакетов, чтобы все другие внутренние продукты могли загружать / обновлять фреймворк с помощью NuGet.

Пока что у нас есть процесс сборки (долгое время) и версионирование наших библиотек, и остается только "Nuget Pack«все проекты.

Что я пробовал до сих пор:

nuget spec * .csproj, затем nuget pack * .nuspec;nuget spec * .dll, затем nuget pack * .nuspec;пакет nuget * .csproj напрямую (без файла .nuspec);

Все они, кажется, работают, но все они, кажется, терпят неудачу на шагах, в которых я действительно нуждаюсь, чтобы они преуспели.

Что я на самом деле получаю от выполнения упомянутых шагов:

нет в списке зависимостей,нет ссылка² в списке;

нет в списке зависимостей,нет в списке reference² все библиотеки из каталога упакованы в один и тот же файл .nupkg (без использования -IncludeReferencedProjects);

(Пока лучшее)Несколько перечисленные зависимости,нет ссылка ² перечислена, только фактическая dll проекта находится внутри папки lib на .nupkg.

¹:Под зависимостью я подразумеваю зависимости NuGet, пакеты от NuGet
²:Под ссылкой я подразумеваю ссылки на проект решения.

Пример сценария:

Solution1.sln
- ProjectA
- ProjectB

ProjectA имеетСсылка на проект в ProjectB. Что яожидать произойти на .nuspec генерируется:

<?xml version="1.0"?>
<package xmlns="http://schemas.microsoft.com/packaging/2011/08/nuspec.xsd">
  <metadata>
    <id>ProjectA <- OK</id>
    <version>1.2.0.0 < - OK</version>
    <title>ProjectA <- OK</title>
    <authors>My Company <- OK</authors>
    <owners>My Company <- OK</owners>
    <requireLicenseAcceptance>false</requireLicenseAcceptance>
    <description>Description</description>
    <copyright>OK</copyright>
    <dependencies>
        <dependecy id="ProjectB" Version="1.2.0.0" /> <<<<<<---- NOT HAPPENING!
    </dependencies>
  </metadata>
</package>    

В списке перечислены некоторые зависимости nuget, но не все из них (даже если они находятся внутри файла packages.config из ссылочного проекта). Например: у меня есть проект, который зависит от 4 других пакетов NuGet, только 2 перечислены как зависимости от сгенерированного файла .nuspec.

Важная информация:

Каждый проект имеет свой собственный package.config, способ, которым NuGet его создает;Папка решения содержит папку пакетов со всеми ссылочными пакетами;Уже пробовал Nugetter (XAML не работает на VS 2012.3 и TFS 2012, не может открыть его)Уже попробовалэтотакже не включает в себя зависимости и ссылки должным образом;Восстановление пакета решений включеноНА (нам нужно это, чтобы избежать хранения пакетов в TFS).

Что мне нужно:

Автоматизируйте процесс упаковки, чтобы упаковать каждый csproj, включая все ссылки и зависимости в файле .nuspec, чтобы все они были правильно загружены при установке.

Подобные вопросы, которые я изучал:

NuGet: команда pack НЕ включает зависимости nuget
Пакет Nuget, включая зависимости для некоторых проектов
Почему Nuget не включает указанный проект при упаковке?

Ответы на вопрос(2)

Ваш ответ на вопрос