dependencies.yml 3.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184
  1. .all_targets: &all_targets
  2. - esp32
  3. - esp32s2
  4. - esp32s3
  5. - esp32c3
  6. .target_test: &target_test
  7. - example_test
  8. - custom_test
  9. - unit_test
  10. - component_ut
  11. ##############
  12. # Build Jobs #
  13. ##############
  14. "build":
  15. labels:
  16. - build
  17. patterns:
  18. - build_components
  19. - build_system
  20. included_in:
  21. - build:target_test
  22. # -------------------
  23. # Specific Build Jobs
  24. # -------------------
  25. "build:docker":
  26. labels:
  27. - build
  28. - docker
  29. patterns:
  30. - docker
  31. "build:windows":
  32. labels:
  33. - build
  34. - windows
  35. patterns:
  36. - build_system
  37. - windows
  38. "build:macos":
  39. labels:
  40. - build
  41. - macos
  42. - macos_test # for backward compatibility
  43. patterns:
  44. - build_system
  45. - macos
  46. # ---------------
  47. # Build Test Jobs
  48. # ---------------
  49. "build:{0}-{1}":
  50. matrix:
  51. - *target_test
  52. - *all_targets
  53. labels:
  54. - build
  55. patterns:
  56. - build_components
  57. - build_system
  58. build:integration_test:
  59. labels:
  60. - build
  61. patterns:
  62. - build_components
  63. - build_system
  64. # -------------
  65. # Special Cases
  66. # -------------
  67. "build:example_test-esp32c3": # esp32c3 test is only run by label, but build jobs should always be triggered
  68. labels:
  69. - build
  70. - example_test
  71. patterns:
  72. - build_components
  73. - build_system
  74. - build-example_test
  75. - example_test
  76. ####################
  77. # Target Test Jobs #
  78. ####################
  79. "test:{0}-{1}":
  80. matrix:
  81. - *target_test
  82. - *all_targets
  83. labels: # For each rule, use labels <test_type> and <test_type>-<target>
  84. - "{0}"
  85. - "{0}_{1}"
  86. patterns: # For each rule, use patterns <test_type> and build-<test_type>
  87. - "{0}"
  88. - "build-{0}"
  89. included_in: # Parent rules
  90. - "build:{0}-{1}"
  91. - build:target_test
  92. - test:target_test
  93. - test:any_test
  94. # -------------
  95. # Special Cases
  96. # -------------
  97. "test:component_ut-{0}": # component_ut will trigger by unit_test as well, since now we have 2 kinds of UT
  98. matrix:
  99. - *all_targets
  100. labels:
  101. - component_ut
  102. - "component_ut_{0}"
  103. - unit_test
  104. - "unit_test_{0}"
  105. patterns:
  106. - component_ut
  107. - "build-component_ut-{0}"
  108. included_in:
  109. - "build:component_ut-{0}"
  110. - build:target_test
  111. - test:target_test
  112. - test:any_test
  113. "test:example_test-esp32c3": # For esp32c3 we trigger only with label
  114. "labels:example_test-esp32c3":
  115. labels:
  116. - example_test_esp32c3
  117. included_in:
  118. - build:example_test-esp32c3
  119. - build:target_test
  120. "test:integration_test":
  121. labels:
  122. - "integration_test"
  123. patterns:
  124. - "integration_test"
  125. included_in:
  126. - "build:integration_test"
  127. - build:target_test
  128. - test:target_test
  129. - test:any_test
  130. "test:host_test":
  131. labels:
  132. - host_test
  133. patterns:
  134. - host_test
  135. included_in:
  136. - test:any_test
  137. "test:submodule":
  138. labels:
  139. - submodule
  140. patterns:
  141. - submodule
  142. #################################
  143. # Triggered Only By Labels Jobs #
  144. #################################
  145. "labels:iperf_stress_test": # example_test
  146. labels:
  147. - iperf_stress_test
  148. included_in:
  149. - build:example_test-esp32
  150. - build:target_test
  151. - test:any_test
  152. "labels:weekend_test": # custom test
  153. labels:
  154. - weekend_test
  155. included_in:
  156. - build:custom_test-esp32
  157. - build:target_test
  158. - test:any_test
  159. "labels:nvs_coverage": # host_test
  160. labels:
  161. - nvs_coverage
  162. "labels:fuzzer_test-weekend_test": # host test
  163. labels:
  164. - fuzzer_test
  165. - weekend_test