config.yml 3.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125
  1. version: 2
  2. jobs:
  3. build-qt4:
  4. working_directory: /usr/src/CTK
  5. docker:
  6. - image: slicer/buildenv-qt4-centos5:latest
  7. steps:
  8. - checkout
  9. - run:
  10. name: Configure and build
  11. command: |
  12. mkdir /usr/src/CTK-build
  13. cd /usr/src/CTK-build
  14. cmake \
  15. -DCTK_QT_VERSION:STRING=4 \
  16. -DCTK_ENABLE_Widgets:BOOL=ON \
  17. ../CTK
  18. make -j4
  19. - save_cache:
  20. key: ctk-src-{{ .Revision }}
  21. paths: /usr/src/CTK
  22. - save_cache:
  23. key: ctk-build-qt4-{{ .Revision }}
  24. paths: /usr/src/CTK-build
  25. - save_cache:
  26. key: ctk-qt4-libraries-{{ .Revision }}
  27. paths: /usr/src/qt-install
  28. test-qt4:
  29. docker:
  30. - image: thewtex/opengl:debian
  31. steps:
  32. - restore_cache:
  33. keys:
  34. - ctk-src-{{ .Revision }}
  35. - restore_cache:
  36. keys:
  37. - ctk-build-qt4-{{ .Revision }}
  38. - restore_cache:
  39. keys:
  40. - ctk-qt4-libraries-{{ .Revision }}
  41. - run:
  42. name: Workaround the difference between cmake install path in 'slicer/buildenv-*' and 'thewtex/opengl:debian' images
  43. command: |
  44. mkdir -p /usr/src/cmake-3.11.0/bin
  45. ln -s $(which cmake) /usr/src/cmake-3.11.0/bin/cmake
  46. ln -s $(which cpack) /usr/src/cmake-3.11.0/bin/cpack
  47. ln -s $(which ctest) /usr/src/cmake-3.11.0/bin/ctest
  48. - run:
  49. command: |
  50. export APP="sudo chown -R user.user /usr/src/CTK-build && cd /usr/src/CTK-build/CTK-build && ctest -VV"
  51. /usr/bin/supervisord -c /etc/supervisor/supervisord.conf
  52. [ "$(cat /tmp/graphical-app.return_code)" = 0 ]
  53. environment:
  54. QT_X11_NO_MITSHM: "1"
  55. XDG_RUNTIME_DIR: "/tmp/runtime-user"
  56. build-qt5:
  57. working_directory: /usr/src/CTK
  58. docker:
  59. - image: slicer/buildenv-qt5-centos7:latest
  60. steps:
  61. - checkout
  62. - run:
  63. name: Configure and build
  64. command: |
  65. mkdir /usr/src/CTK-build
  66. cd /usr/src/CTK-build
  67. cmake \
  68. -DCTK_QT_VERSION:STRING=5 \
  69. -DCTK_ENABLE_Widgets:BOOL=ON \
  70. ../CTK
  71. make -j4
  72. - save_cache:
  73. key: ctk-src-{{ .Revision }}
  74. paths: /usr/src/CTK
  75. - save_cache:
  76. key: ctk-build-qt5-{{ .Revision }}
  77. paths: /usr/src/CTK-build
  78. - save_cache:
  79. key: ctk-qt5-libraries-{{ .Revision }}
  80. paths: /opt/qt
  81. test-qt5:
  82. docker:
  83. - image: thewtex/opengl:debian
  84. steps:
  85. - restore_cache:
  86. keys:
  87. - ctk-src-{{ .Revision }}
  88. - restore_cache:
  89. keys:
  90. - ctk-build-qt5-{{ .Revision }}
  91. - restore_cache:
  92. keys:
  93. - ctk-qt5-libraries-{{ .Revision }}
  94. - run:
  95. name: Workaround the difference between cmake install path in 'slicer/buildenv-*' and 'thewtex/opengl:debian' images
  96. command: |
  97. mkdir -p /usr/src/cmake-3.11.0-Linux-x86_64/bin
  98. ln -s $(which cmake) /usr/src/cmake-3.11.0-Linux-x86_64/bin/cmake
  99. ln -s $(which cpack) /usr/src/cmake-3.11.0-Linux-x86_64/bin/cpack
  100. ln -s $(which ctest) /usr/src/cmake-3.11.0-Linux-x86_64/bin/ctest
  101. - run:
  102. command: |
  103. export APP="sudo chown -R user.user /usr/src/CTK-build && cd /usr/src/CTK-build/CTK-build && ctest -VV"
  104. /usr/bin/supervisord -c /etc/supervisor/supervisord.conf
  105. [ "$(cat /tmp/graphical-app.return_code)" = 0 ]
  106. environment:
  107. QT_X11_NO_MITSHM: "1"
  108. XDG_RUNTIME_DIR: "/tmp/runtime-user"
  109. workflows:
  110. version: 2
  111. build-test:
  112. jobs:
  113. - build-qt4
  114. - test-qt4:
  115. requires:
  116. - build-qt4
  117. - build-qt5
  118. - test-qt5:
  119. requires:
  120. - build-qt5