Skip to content

Commit eadca28

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 946466d commit eadca28

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
@@ -24,6 +24,9 @@ jobs:
2424
- '2.6'
2525
- '2.7'
2626
- '2.8'
27+
build_flow:
28+
- 'cmake_and_make'
29+
- 'luarocks'
2730

2831
runs-on: ubuntu-latest
2932
steps:
@@ -35,5 +38,29 @@ jobs:
3538
- name: Clone the module
3639
uses: actions/checkout@v2
3740

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

0 commit comments

Comments
 (0)