Skip to content
This repository was archived by the owner on Apr 19, 2023. It is now read-only.

Commit 5b7e0d2

Browse files
committed
ci: support GitLab CI using setup-cpp
1 parent c310c57 commit 5b7e0d2

1 file changed

Lines changed: 49 additions & 0 deletions

File tree

.gitlab-ci.yml

Lines changed: 49 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,49 @@
1+
image: ubuntu:latest
2+
3+
stages:
4+
- test
5+
6+
.setup_linux: &setup_linux |
7+
DEBIAN_FRONTEND=noninteractive
8+
9+
# set time-zone
10+
TZ=Canada/Pacific
11+
ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone
12+
13+
# for downloading
14+
apt-get update -qq
15+
apt-get install -y --no-install-recommends curl gnupg ca-certificates
16+
17+
# keys used by apt
18+
apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 3B4FE6ACC0B21F32
19+
apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 40976EAF437D05B5
20+
apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 1E9377A2BA9EF27F
21+
22+
.setup_cpp: &setup_cpp |
23+
curl -LJO "https://github.com/aminya/setup-cpp/releases/download/v0.5.6/setup_cpp_linux"
24+
chmod +x setup_cpp_linux
25+
./setup_cpp_linux --compiler $compiler --cmake true --ninja true --conan true --ccache true
26+
source ~/.profile
27+
28+
.test: &test |
29+
# Build and Test
30+
cmake -S . -B ./build -DCMAKE_BUILD_TYPE:STRING=RelWithDebInfo
31+
cmake --build ./build --config RelWithDebInfo
32+
33+
test_linux_llvm:
34+
stage: test
35+
variables:
36+
compiler: llvm
37+
script:
38+
- *setup_linux
39+
- *setup_cpp
40+
- *test
41+
42+
test_linux_gcc:
43+
stage: test
44+
variables:
45+
compiler: gcc
46+
script:
47+
- *setup_linux
48+
- *setup_cpp
49+
- *test

0 commit comments

Comments
 (0)