jenkins-env.groovy 5.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889
  1. mail_to = "e.balbekova@labinsys.ru" // Кого оповещать всегда при любой сборке или неудаче (разработчики)
  2. rc_mail_to = "m.troshechkin@bbserv.ru, s.lysikov@bbserv.ru" // Кого дополнительно оповещать при выходе релиз-кандидата (тестировщики)
  3. release_mail_to = "a.kolyaskin@labinsys.ru, i.garipov@labinsys.ru" // Кого дополнительно оповещать при релизе (производство, ГИП, менеджеры и т.п.)
  4. targetFolder = "firmware/BT-67xx/bt67xx_universal_hw/" // Папка в хранилище, где будут располагаться артефакты.
  5. // Указывает на репозиторий и семейство продуктов ('EPU', 'bt67xx', 'Modem' и т.п.)
  6. outputFolder = "output_all/" // Папка в репозитории, где лежат рузультаты сборки.
  7. fwRegex = "BT_67*xx.bin" // Какие файлы публиковать при релизе основного ПО
  8. mibRegex = "*.MIB" // Какие MIB-файлы сохранять при релизе
  9. serviceRegex = "BT_*service.bin" // Какие файлы публиковать при релизе сервисного ПО
  10. bootloaderRegex = "iap.bin" // Какие файлы публиковать при релизе загрузчика
  11. changelogFileName = "Changelog.md" // Имя файла с историей релизов ПО
  12. // Скрипт с инструкцией для сборки ПО, например "make" или "make preconfig && make".
  13. // Так же в скрипте необходимо скопировать MIB файлы в папку ${outputPath}
  14. // Если сборка производится для нескольких устройств - MIB файлы должны лежать в подпапках устрйоств
  15. makeScript = """\
  16. make HARDWARE=bt6703 VERBOSE=1 DEBUG=0 PRINTF=custom MAC=EC-4C-4D-00-80-0A || true
  17. make distclean
  18. make HARDWARE=bt6703 VERBOSE=1 DEBUG=0 PRINTF=custom MAC=EC-4C-4D-00-80-0A
  19. mkdir -p ./output_all/bt6703/
  20. cp ./output/* ./output_all/bt6703/
  21. cp ./docs/bt6703/*.MIB ./output_all/bt6703/
  22. cp ./docs/bt6703/Changelog.md ./output_all/bt6703/
  23. make distclean
  24. make HARDWARE=bt6703_rt VERBOSE=1 DEBUG=0 PRINTF=custom MAC=EC-4C-4D-00-81-0A
  25. mkdir -p ./output_all/bt6703-rt/
  26. cp ./output/* ./output_all/bt6703-rt/
  27. cp ./docs/bt6703_rt/*.MIB ./output_all/bt6703-rt/
  28. cp ./docs/bt6703_rt/Changelog.md ./output_all/bt6703-rt/
  29. make distclean
  30. make HARDWARE=bt6707 VERBOSE=1 DEBUG=0 PRINTF=custom MAC=EC-4C-4D-00-83-0A
  31. mkdir -p ./output_all/bt6707/
  32. cp ./output/* ./output_all/bt6707/
  33. cp ./docs/bt6707/*.MIB ./output_all/bt6707/
  34. cp ./docs/bt6707/Changelog.md ./output_all/bt6707/
  35. make distclean
  36. make HARDWARE=bt6709 VERBOSE=1 DEBUG=0 PRINTF=custom MAC=EC-4C-4D-00-93-DA
  37. mkdir -p ./output_all/bt6709/
  38. cp ./output/* ./output_all/bt6709/
  39. cp ./docs/bt6709/*.MIB ./output_all/bt6709/
  40. cp ./docs/bt6709/Changelog.md ./output_all/bt6709/
  41. make distclean
  42. make HARDWARE=bt6709_mts VERBOSE=1 DEBUG=0 PRINTF=custom MAC=EC-4C-4D-00-94-DA
  43. mkdir -p ./output_all/bt6709-mts/
  44. cp ./output/* ./output_all/bt6709-mts/
  45. cp ./docs/bt6709_mts/*.MIB ./output_all/bt6709-mts/
  46. cp ./docs/bt6709_mts/Changelog.md ./output_all/bt6709-mts/
  47. make distclean
  48. make HARDWARE=bt6710 VERBOSE=1 DEBUG=0 PRINTF=custom MAC=EC-4C-4D-00-EE-DA
  49. mkdir -p ./output_all/bt6710/
  50. cp ./output/* ./output_all/bt6710/
  51. cp ./docs/bt6710/*.MIB ./output_all/bt6710/
  52. cp ./docs/bt6710/Changelog.md ./output_all/bt6710/
  53. make distclean
  54. make HARDWARE=bt6711 VERBOSE=1 DEBUG=0 PRINTF=custom MAC=EC-4C-4D-00-EE-DВ
  55. mkdir -p ./output_all/bt6711/
  56. cp ./output/* ./output_all/bt6711/
  57. cp ./docs/bt6711/*.MIB ./output_all/bt6711/
  58. cp ./docs/bt6711/Changelog.md ./output_all/bt6711/
  59. make distclean
  60. make HARDWARE=bt6711_v1 VERBOSE=1 DEBUG=0 PRINTF=custom MAC=EC-4C-4D-00-EE-DC
  61. mkdir -p ./output_all/bt6711-v1/
  62. cp ./output/* ./output_all/bt6711-v1/
  63. cp ./docs/bt6711_v1/*.MIB ./output_all/bt6711-v1/
  64. cp ./docs/bt6711_v1/Changelog.md ./output_all/bt6711-v1/
  65. """
  66. // Следующие три параметра уточнить у ответственного тестировщика
  67. testType = "robot" // Тип тестов. По сути указывает на репозиторий с тестами на определенном фреймворке
  68. testTags = "smoke" // Теги, с которыми запускаются тесты. Определяют, какие наборы тестов будут запущены
  69. // Указывает на имя настроенного Jenkins-агента с необходимым окружением для сборки, при изменениях в требуемом окружении уведомить DevOps!!
  70. buildenvAgent = "stm32-buildenv-agent-v2"
  71. // Список устройств, для которых компилируется данный код (только тукущая ветка, не весь репозиторий).
  72. // При сборке релиза проверяется, что устройство указанное в теге состоит в этом множестве.
  73. // Синтаксис: groovy list
  74. devices = ['bt6703', 'bt6703-rt', 'bt6707', 'bt6709', 'bt6709-mts', 'bt6710', 'bt6711', 'bt6711-v1']