@@ -2,7 +2,7 @@ version: 2
2
2
jobs :
3
3
build :
4
4
docker :
5
- - image : heliconwave/cplusplusdev :latest
5
+ - image : heliconwave/circleci-ubuntu-18.04 :latest
6
6
steps :
7
7
- checkout
8
8
- setup_remote_docker :
12
12
command : lsb_release -a
13
13
- run :
14
14
name : Build CMake Debug
15
- command : mkdir Debug && cd Debug/ && cmake -DCMAKE_BUILD_TYPE=Debug .. && cmake --build . -- -j$(nproc)
15
+ command : mkdir Debug && cd Debug/ && cmake -DCMAKE_BUILD_TYPE=Debug -DENABLE_TESTS=ON -DENABLE_COMPONENT_TESTS=ON .. && cmake --build . -- -j$(nproc)
16
16
- run :
17
17
name : Build CMake Release
18
18
command : mkdir Release && cd Release/ && cmake -DCMAKE_BUILD_TYPE=Release -DBUILD_SHARED_LIBS=YES -DENABLE_TESTS=OFF .. && cmake --build . -- -j$(nproc)
28
28
cat CPackConfig.cmake &&
29
29
cpack --config CPackConfig.cmake
30
30
- store_artifacts :
31
- path : /root/project/mpeg2ts-0.5.0-Linux.tar.gz
31
+ path : /root/project/mpeg2ts-0.6.0-Linux.tar.gz
32
+ - persist_to_workspace :
33
+ root : /root/project
34
+ paths :
35
+ - Debug
36
+ - Release
37
+ build-16.04 :
38
+ docker :
39
+ - image : heliconwave/circleci-ubuntu-16.04:latest
40
+ steps :
41
+ - checkout
42
+ - setup_remote_docker :
43
+ docker_layer_caching : true
44
+ - run :
45
+ name : Print Container Metadata
46
+ command : lsb_release -a
47
+ - run :
48
+ name : Build CMake Debug
49
+ command : mkdir Debug && cd Debug/ && cmake -DCMAKE_BUILD_TYPE=Debug -DENABLE_TESTS=ON -DENABLE_COMPONENT_TESTS=OFF .. && cmake --build . -- -j$(nproc)
50
+ - run :
51
+ name : Build CMake Release
52
+ command : mkdir Release && cd Release/ && cmake -DCMAKE_BUILD_TYPE=Release -DBUILD_SHARED_LIBS=YES -DENABLE_TESTS=OFF .. && cmake --build . -- -j$(nproc)
53
+ - run :
54
+ name : Creating Artifacts
55
+ command :
56
+ cpack --version &&
57
+ echo "include(\"Release/CPackConfig.cmake\")" > CPackConfig.cmake &&
58
+ echo "set(CPACK_INSTALL_CMAKE_PROJECTS" >> CPackConfig.cmake &&
59
+ echo " \"Debug;mpeg2ts;ALL;/\"" >> CPackConfig.cmake &&
60
+ echo " \"Release;mpeg2ts;ALL;/\"" >> CPackConfig.cmake &&
61
+ echo " )" >> CPackConfig.cmake &&
62
+ cat CPackConfig.cmake &&
63
+ cpack --config CPackConfig.cmake
64
+ - store_artifacts :
65
+ path : /root/project/mpeg2ts-0.6.0-Linux.tar.gz
32
66
- persist_to_workspace :
33
67
root : /root/project
34
68
paths :
44
78
# command: cd /root/project && em++ --version && pwd && rm -rf build/ && mkdir build && cd build/ && emcmake cmake -DCMAKE_CXX_STANDARD=11 -DENABLE_TESTS=OFF -DENABLE_WEBASSEMBLY=ON .. && cmake --build . -- -j$(nproc)
45
79
test-unit :
46
80
docker :
47
- - image : heliconwave/cplusplus:latest
81
+ - image : heliconwave/circleci-ubuntu-18.04:latest
82
+ working_directory : ~/project
83
+ steps :
84
+ - checkout
85
+ - attach_workspace :
86
+ at : /root/project
87
+ - run :
88
+ name : Run CTest
89
+ command : pwd && ls -ltrha && cd Debug/ && make unit-tests
90
+ test-unit-16.04 :
91
+ docker :
92
+ - image : heliconwave/circleci-ubuntu-16.04:latest
48
93
working_directory : ~/project
49
94
steps :
50
95
- checkout
55
100
command : pwd && ls -ltrha && cd Debug/ && make unit-tests
56
101
test-component :
57
102
docker :
58
- - image : heliconwave/cplusplus :latest
103
+ - image : heliconwave/circleci-ubuntu-18.04 :latest
59
104
working_directory : ~/project
60
105
steps :
61
106
- checkout
66
111
command : cd Debug/ && make component-tests
67
112
test-benchmark :
68
113
docker :
69
- - image : heliconwave/cplusplus :latest
114
+ - image : heliconwave/circleci-ubuntu-18.04 :latest
70
115
steps :
71
116
- checkout
72
117
- attach_workspace :
@@ -82,17 +127,21 @@ jobs:
82
127
- attach_workspace :
83
128
at : /root/project
84
129
- run :
85
- name : Run micro benchmark
130
+ name : Run memcheck unit tests
86
131
command : cd Debug/ && ctest -T memcheck
87
132
workflows :
88
133
version : 2
89
134
build-test-and-deploy :
90
135
jobs :
91
136
- build
137
+ - build-16.04
92
138
# - build-webassembly
93
139
- test-unit :
94
140
requires :
95
141
- build
142
+ - test-unit-16.04 :
143
+ requires :
144
+ - build-16.04
96
145
- test-component :
97
146
requires :
98
147
- build
0 commit comments