ci.yml 4.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239
  1. name: CI
  2. on:
  3. pull_request:
  4. push:
  5. branches:
  6. - master
  7. - develop
  8. - feature/**
  9. tags:
  10. - '**'
  11. jobs:
  12. b2-posix:
  13. strategy:
  14. fail-fast: false
  15. matrix:
  16. include:
  17. - os: ubuntu-20.04
  18. - os: ubuntu-22.04
  19. - os: macos-11
  20. - os: macos-12
  21. - os: macos-13
  22. runs-on: ${{matrix.os}}
  23. steps:
  24. - uses: actions/checkout@v4
  25. with:
  26. submodules: true
  27. - name: Setup Boost
  28. run: |
  29. ./bootstrap.sh
  30. ./b2 -d0 headers
  31. - name: Build Boost
  32. run: |
  33. ./b2 -j3 stage
  34. - name: Install Boost
  35. run: |
  36. ./b2 -j3 --prefix=$HOME/.local install
  37. - name: Test Boost
  38. run: |
  39. cd status
  40. ../b2 -j3 quick
  41. b2-windows:
  42. strategy:
  43. fail-fast: false
  44. matrix:
  45. include:
  46. - os: windows-2019
  47. - os: windows-2022
  48. runs-on: ${{matrix.os}}
  49. steps:
  50. - uses: actions/checkout@v4
  51. with:
  52. submodules: true
  53. - name: Setup Boost
  54. shell: cmd
  55. run: |
  56. cmd /c bootstrap
  57. b2 -d0 headers
  58. - name: Build Boost
  59. run: |
  60. ./b2 -j3 stage
  61. - name: Install Boost
  62. run: |
  63. ./b2 -j3 install
  64. - name: Test Boost
  65. run: |
  66. cd status
  67. ../b2 -j3 quick
  68. cmake-install-posix:
  69. strategy:
  70. fail-fast: false
  71. matrix:
  72. include:
  73. - os: ubuntu-20.04
  74. - os: ubuntu-22.04
  75. - os: macos-11
  76. - os: macos-12
  77. - os: macos-13
  78. runs-on: ${{matrix.os}}
  79. timeout-minutes: 20
  80. steps:
  81. - uses: actions/checkout@v4
  82. with:
  83. submodules: true
  84. - name: Configure Boost
  85. run: |
  86. mkdir __build__ && cd __build__
  87. cmake -DBUILD_SHARED_LIBS=ON -DCMAKE_INSTALL_PREFIX=~/.local ..
  88. - name: Build Boost
  89. run: |
  90. cd __build__
  91. cmake --build . -j 3
  92. - name: Install Boost
  93. run: |
  94. cd __build__
  95. cmake --build . -j 3 --target install
  96. cmake-install-windows:
  97. strategy:
  98. fail-fast: false
  99. matrix:
  100. include:
  101. - os: windows-2019
  102. - os: windows-2022
  103. runs-on: ${{matrix.os}}
  104. steps:
  105. - uses: actions/checkout@v4
  106. with:
  107. submodules: true
  108. - name: Configure Boost
  109. run: |
  110. mkdir __build__ && cd __build__
  111. cmake -DBUILD_SHARED_LIBS=ON ..
  112. - name: Build Boost
  113. run: |
  114. cd __build__
  115. cmake --build . -j 3
  116. - name: Install Boost
  117. run: |
  118. cd __build__
  119. cmake --build . -j 3 --target install
  120. cmake-test-posix:
  121. strategy:
  122. fail-fast: false
  123. matrix:
  124. include:
  125. - os: ubuntu-latest
  126. runs-on: ${{matrix.os}}
  127. steps:
  128. - uses: actions/checkout@v4
  129. with:
  130. submodules: true
  131. - name: Configure Boost
  132. run: |
  133. mkdir __build__ && cd __build__
  134. cmake -DBUILD_TESTING=ON -DBOOST_EXCLUDE_LIBRARIES="lockfree;outcome;process;static_string;url" ..
  135. - name: Build tests
  136. run: |
  137. cd __build__
  138. cmake --build . -j 3 --target tests
  139. - name: Run tests
  140. run: |
  141. cd __build__
  142. ctest --output-on-failure --no-tests=error -j 3
  143. cmake-test-posix-quick:
  144. strategy:
  145. fail-fast: false
  146. matrix:
  147. include:
  148. - os: ubuntu-20.04
  149. - os: ubuntu-22.04
  150. - os: macos-11
  151. - os: macos-12
  152. - os: macos-13
  153. runs-on: ${{matrix.os}}
  154. timeout-minutes: 90
  155. steps:
  156. - uses: actions/checkout@v4
  157. with:
  158. submodules: true
  159. - name: Configure Boost
  160. run: |
  161. mkdir __build__ && cd __build__
  162. cmake -DBUILD_TESTING=ON ..
  163. - name: Build tests
  164. run: |
  165. cd __build__
  166. cmake --build . -j 3 --target tests-quick
  167. - name: Run tests
  168. run: |
  169. cd __build__
  170. ctest --output-on-failure --no-tests=error -j 3 -R quick
  171. cmake-test-windows-quick:
  172. strategy:
  173. fail-fast: false
  174. matrix:
  175. include:
  176. - os: windows-2019
  177. - os: windows-2022
  178. runs-on: ${{matrix.os}}
  179. steps:
  180. - uses: actions/checkout@v4
  181. with:
  182. submodules: true
  183. - name: Configure Boost
  184. run: |
  185. mkdir __build__ && cd __build__
  186. cmake -DBUILD_TESTING=ON ..
  187. - name: Build tests
  188. run: |
  189. cd __build__
  190. cmake --build . -j 3 --target tests-quick
  191. - name: Run tests
  192. run: |
  193. cd __build__
  194. ctest --output-on-failure --no-tests=error -j 3 -R quick -C Debug
粤ICP备19079148号