Skip to content

Commit 56d5c19

Browse files
committed
ci: add pure cmake . && make build flow
The new CI rule ensures that a usual developer build flow is working. It also improves testing by using the `Debug` build type, which adds the `-Werror` compiler option. Compiler warnings are interpreted as errors in this case. It is inspired by #24, where the `Debug` build fails, but `RelWithDebInfo` is fine. This commit follows a spirit of [1], where it was declared that we should verify as developer's flow as well as user's flow. We missed developer's flow in CI of this module and now it is here. [1]: tarantool/tarantool#6056
1 parent fa575df commit 56d5c19

File tree

1 file changed

+29
-2
lines changed

1 file changed

+29
-2
lines changed

.github/workflows/fast_testing.yml

Lines changed: 29 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,9 @@ jobs:
2525
- '2.7'
2626
- '2.8'
2727
- '2.10'
28+
build_flow:
29+
- 'cmake_and_make'
30+
- 'luarocks'
2831

2932
runs-on: ubuntu-latest
3033
steps:
@@ -36,5 +39,29 @@ jobs:
3639
- name: Clone the module
3740
uses: actions/checkout@v2
3841

39-
- run: tarantoolctl rocks make
40-
- run: make -C build.luarocks/ ARGS=-VV test
42+
# A developer of the module usually calls `cmake . && make`
43+
# or something similar. Here we ensure that this build flow
44+
# is fine.
45+
#
46+
# Debug is a default build type, so compiler warnings are
47+
# interpreted as errors here.
48+
- name: Build using cmake and run testing
49+
run: |
50+
cmake .
51+
make
52+
make ARGS=-VV test
53+
if: matrix.build_flow == 'cmake_and_make'
54+
55+
# A user usually calls `tarantoolctl rocks install
56+
# <module_name> [<version>]`. Here we imitate this build
57+
# flow using `tarantoolctl rocks make`, which is like the
58+
# former, but uses a locally cloned repository.
59+
#
60+
# RelWithDebInfo build type is used under the hood, so
61+
# compiler warnings are just warnings: they do not fail the
62+
# build.
63+
- name: Build using luarocks and run testing
64+
run: |
65+
tarantoolctl rocks make
66+
make -C build.luarocks/ ARGS=-VV test
67+
if: matrix.build_flow == 'luarocks'

0 commit comments

Comments
 (0)