Как пакет проекта vs2017-MVC создается автоматически с помощью octopack - PullRequest
0 голосов
/ 19 ноября 2018

На самом деле, сервер осьминога установлен на моем локальном компьютере, я не хочу использовать инструменты автоматизации сборки, такие как TeamCity, TFS или сторонние инструменты, такие как Nant .мы используем MSBuild.

Новое в развертывании осьминога, ища идею, как получить уникальный номер версии пакета в каждой сборке vs2017.До сих пор известно, что для осьминога требуется уникальная версия каждого пакета, я хочу использовать команду MS-build в моем проекте vs2017, которая помогает мне создавать уникальный номер при каждой успешной сборке.

В последнее время используется после MSBuild on " Командная строка разработчика для VS2017 "

msbuild 
/t:build
/p:RunOctoPack=true
/p:OctoPackPackageVersion=1.0.0-BETA-1 /p:OctoPackReleaseNotesFile=ReleaseNotes.txt 
/p:OctoPackPublishPackageToHttp=http://localhost/nuget/packages /p:OctoPackPublishApiKey=API-9MQWIWVDKR44YSGYROUGPPFBXX

Можно ли использовать любую переменную с / p: OctoPackPackageVersion , которая увеличивается в каждой сборке.

Я ищу помощь по следующим вопросам

  1. После каждой успешной сборки vs2017 хотите создать пакет?
  2. Как сохранить новый пакет, чтобы он не переопределял предыдущие пакеты?
  3. Как получить уникальный номер версии для каждой успешной сборки?

Если есть какие-либо вопросы, пожалуйста, спросите.

1 Ответ

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

Благодаря команде поддержки осьминога,

Обычно номер сборки предоставляется с сервера сборки, такого как TFS или Team City. Эти номера сборки по умолчанию увеличиваются, что делает их удобным способом предоставления нового номера версии для каждой сборки.

Звучит так, будто вы строите прямо из командной строки, а не используете сервер сборки. В этом случае вам придется управлять номерами версий вручную и передавать их в командной строке. Однако такой подход не рекомендуется, так как он не будет хорошо масштабироваться и будет трудно управлять крупными проектами. Но для начала вы можете использовать такой формат даты из Powershell, как этот. Поскольку дата гарантированно увеличивается между сборками, это быстрый способ получить уникальные и увеличивающиеся номера версий.

msbuild 
/t:build
/p:RunOctoPack=true
/p:OctoPackPackageVersion=$(get-date -Format "yyyy.HH.dd") 
/p:OctoPackReleaseNotesFile=ReleaseNotes.txt 
/p:OctoPackPublishPackageToHttp=http://localhost/nuget/packages 
/p:OctoPackPublishApiKey=API-APIKEYGOESHERE
...