Мы обновили с TFS 2013 до TFS 2017. Одна из возможностей, которую мы пытаемся реализовать, в 2013 году была возможность иметь пользовательский номер сборки. в предыдущем методе у нас был файл с именем BuildVersion.XML, который на первом этапе сборки прочитал основную, второстепенную и ревизию и назовет сборку с этим номером сборки + 1 в ревизии. Затем он изменит код проверки и обновит номер ревизии и проверит новую версию. Я знаю, что есть шаги, когда люди обновляют AssemblyInfo. Проблема в том, что не весь наш код - это .net-приложения. теперь у нас также есть пакеты SSIS, приложения iOS/android Кордовы, угловые сайты, aws-функции лямбда с node.js, которые не имеют концепции AssemblyInfo. есть ли простой способ реализовать это?TFS 2017 Build Numbering
ответ
Вы ван сделать то же самое в Team Build в TFS 2017.
Вы можете обновить номер сборки из любой задачи по телефону:
'' 'Write-Verbose -Verbose «## всо [build.updatebuildnumber] 1.2.3.4 "
Добавьте задачу PowerShell и добавьте встроенный скрипт для чтения из вашего файла и обновите номер сборки указанным выше.
После этого вы можете иметь дополнительные скрипты, которые используют номер сборки любым способом, необходимым для версии вашего приложения.
Вы можете увидеть полный список протоколирования команд здесь https://github.com/Microsoft/vso-agent-tasks/blob/master/docs/authoring/commands.md
Вы можете использовать мой VSTS TFVC tasks взаимодействовать с контролем источника, хотя я не рекомендую. Я построил эти задачи для моих клиентов, которые делали именно то, что вы делаете.
Вместо того, чтобы полагаться на файл в исходном элементе управления, было бы гораздо лучшим решением передать BuildNumber из определения сборки вместе с сборкой, попросите один из первых шагов обновить файлы на диске с правильным номером версии, затем запустите свою сборку.
Если вы манипулируете файлами во время сборки и проверяете их, вы рискуете несовместимой нумерацией при масштабировании до нескольких агентов сборки, это сложно использовать в сочетании с параллельными сборками и встроенным переменным мультиплексированием, и, как известно, сделайте Gated Checkins и Shelveset. Кроме того, он ограничивает ваши возможности перехода на Git в будущем.
мы не сможем пройти в строках. у нас есть много разработчиков (50+), работающих во многих системах, нам это нужно полностью автоматизировать. У меня была другая мысль: возможно ли обновить мою переменную build автоматически? Я создаю переменную Build.minor = 1, когда я делаю сборку uppon success, обновляю ее до 2 для следующей сборки? – greektreat
Число разработчиков на самом деле не влияет ... И число систем тоже не ... Вы можете использовать остальные api для запроса предыдущего номера сборки и игры с ним с помощью powershell. Затем используйте магическую строку, предоставленную mrhinsh, чтобы записать новый номер. Вы все равно столкнетесь с проблемами с параллельными сборками, стробированными сборками, сборками на полках и т. Д. – jessehouwing
- 1. Сложный TFS 2017 Обновление
- 2. GitKraken с TFS 2017
- 3. Team Foundation Server 2017 Build and Release
- 4. TFS 2017 Обработчик качества сборки
- 5. TFS 2017 построить как код
- 6. TFS Build vs local build
- 7. TFS Build и Local Build
- 8. TFS 2017 Конфигурация нового рабочего элемента
- 9. Как использовать powershell в tfs 2017
- 10. Как интегрировать TFS 2017 и CRM 2013?
- 11. После перехода на tfs 2017 осенью автотесты
- 12. Преимущества TFS 2012 Build Agents vs TFS 2010 Build Agents?
- 13. Tfs build failed
- 14. TFS Build Agent остановлен
- 15. Ошибка с TFS Build
- 16. Microsoft.Practices и TFS Build
- 17. Build Agent - TFS 2008
- 18. TFS Build Definition Issue
- 19. TFS Build Deploy
- 20. tfs build schedule
- 21. Nodejs TFS Build Definition
- 22. Tfs build definition
- 23. TFS build - Получение ошибки
- 24. TFS Build SourceTfs.Checkout
- 25. TFS 2008 Build Script
- 26. TFS Build Script Tracing
- 27. Отладка TFS build
- 28. TFS Build Fails
- 29. Программный выход tfs build
- 30. TFS 2010 Build Definition
нормально, поэтому запись этой команды будет обновлять номер сборки сборки? '' 'Write-Verbose -Verbose' ## vso [build.updatebuildnumber] 1.2.3.4 ". но затем я хочу увеличить число и проверить файл, обновить значение и снова проверить его. – greektreat
@greektreat Вы можете выполнить все эти шаги внутри сценария PowerShell, а затем вызвать build.updatebuildnumber из этого же скрипта. – JamesQMurphy