Skip to content

Commit 5ab42d4

Browse files
committed
chore: Move most cirrus jobs to circleci.
Cirrus is very expensive now. We need to make our builds cheaper before we can use it more. For now, only the build that can't move out will stay, i.e. the FreeBSD VM one.
1 parent 463eeae commit 5ab42d4

File tree

2 files changed

+61
-100
lines changed

2 files changed

+61
-100
lines changed

.circleci/config.yml

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,10 +7,12 @@ workflows:
77
jobs:
88
- bazel-asan
99
- bazel-dbg
10+
- bazel-msan
1011
- bazel-opt
1112
- clang-analyze
1213
- cpplint
1314
- static-analysis
15+
- cimple
1416
- cimplefmt
1517
- generate-events
1618

@@ -35,6 +37,16 @@ jobs:
3537
- run: .circleci/bazel-test
3638
//c-toxcore/...
3739

40+
bazel-msan:
41+
working_directory: /tmp/cirrus-ci-build
42+
docker:
43+
- image: toxchat/toktok-stack:latest-msan
44+
45+
steps:
46+
- checkout
47+
- run: .circleci/bazel-test
48+
//c-toxcore/auto_tests:lossless_packet_test
49+
3850
bazel-opt:
3951
working_directory: /tmp/cirrus-ci-build
4052
docker:
@@ -106,6 +118,22 @@ jobs:
106118
- run: git submodule update --init --recursive
107119
- run: other/analysis/run-cpplint
108120

121+
cimple:
122+
working_directory: /tmp/cirrus-ci-build
123+
docker:
124+
- image: toxchat/toktok-stack:latest-release
125+
126+
steps:
127+
- checkout
128+
- run: git submodule update --init --recursive
129+
- run: cd /src/workspace &&
130+
bazel test
131+
-k
132+
--build_tag_filters=haskell
133+
--test_tag_filters=haskell
134+
--
135+
//c-toxcore/...
136+
109137
cimplefmt:
110138
working_directory: ~/work
111139
machine: { image: ubuntu-2204:current }

.cirrus.yml

Lines changed: 33 additions & 100 deletions
Original file line numberDiff line numberDiff line change
@@ -1,100 +1,33 @@
1-
---
2-
bazel-opt_task:
3-
timeout_in: 10m
4-
container:
5-
image: toxchat/toktok-stack:latest-release
6-
cpu: 8
7-
memory: 2G
8-
configure_script:
9-
- git submodule update --init --recursive
10-
- /src/workspace/tools/inject-repo c-toxcore
11-
test_all_script:
12-
- cd /src/workspace && tools/retry 5 bazel
13-
test -k
14-
--build_tag_filters=-haskell
15-
--test_tag_filters=-haskell
16-
--
17-
//c-toxcore/...
18-
-//c-toxcore/auto_tests:tcp_relay_test # Cirrus doesn't allow external network connections.
19-
20-
bazel-dbg_task:
21-
timeout_in: 10m
22-
container:
23-
image: toxchat/toktok-stack:latest-debug
24-
cpu: 8
25-
memory: 2G
26-
configure_script:
27-
- git submodule update --init --recursive
28-
- /src/workspace/tools/inject-repo c-toxcore
29-
test_all_script:
30-
- cd /src/workspace && tools/retry 5 bazel
31-
test -k
32-
--build_tag_filters=-haskell
33-
--test_tag_filters=-haskell
34-
--
35-
//c-toxcore/...
36-
-//c-toxcore/auto_tests:tcp_relay_test # Cirrus doesn't allow external network connections.
37-
38-
bazel-msan_task:
39-
timeout_in: 10m
40-
container:
41-
image: toxchat/toktok-stack:latest-msan
42-
cpu: 4
43-
memory: 2G
44-
configure_script:
45-
- git submodule update --init --recursive
46-
- /src/workspace/tools/inject-repo c-toxcore
47-
test_all_script:
48-
- cd /src/workspace && tools/retry 5 bazel
49-
test -k
50-
--
51-
//c-toxcore/auto_tests:lossless_packet_test
52-
53-
cimple_task:
54-
timeout_in: 5m
55-
container:
56-
image: toxchat/toktok-stack:latest-release
57-
cpu: 2
58-
memory: 4G
59-
configure_script:
60-
- git submodule update --init --recursive
61-
- /src/workspace/tools/inject-repo c-toxcore
62-
test_all_script:
63-
- cd /src/workspace && bazel
64-
test -k
65-
--build_tag_filters=haskell
66-
--test_tag_filters=haskell
67-
--
68-
//c-toxcore/...
69-
70-
freebsd_task:
71-
timeout_in: 5m
72-
freebsd_instance:
73-
image_family: freebsd-14-1
74-
configure_script:
75-
- PAGER=cat ASSUME_ALWAYS_YES=YES pkg install
76-
cmake
77-
git
78-
gmake
79-
googletest
80-
libconfig
81-
libsodium
82-
libvpx
83-
ninja
84-
opus
85-
pkgconf
86-
- git submodule update --init --recursive
87-
test_all_script:
88-
- |
89-
# TODO(iphydf): Investigate FreeBSD failures on these tests.
90-
sed -Ei -e '/\(dht_getnodes_api\)/s/^/#/' auto_tests/CMakeLists.txt
91-
cmake . \
92-
-DMIN_LOGGER_LEVEL=TRACE \
93-
-DMUST_BUILD_TOXAV=ON \
94-
-DNON_HERMETIC_TESTS=OFF \
95-
-DTEST_TIMEOUT_SECONDS=50 \
96-
-DUSE_IPV6=OFF \
97-
-DAUTOTEST=ON \
98-
-GNinja
99-
cmake --build . --target install
100-
ctest -j50 --output-on-failure --rerun-failed --repeat until-pass:3 || ctest -j50 --output-on-failure --rerun-failed --repeat until-pass:3
1+
# TODO(iphydf): Reactivate when we have quota again in February 2025.
2+
# ---
3+
# freebsd_task:
4+
# timeout_in: 5m
5+
# freebsd_instance:
6+
# image_family: freebsd-14-1
7+
# configure_script:
8+
# - PAGER=cat ASSUME_ALWAYS_YES=YES pkg install
9+
# cmake
10+
# git
11+
# gmake
12+
# googletest
13+
# libconfig
14+
# libsodium
15+
# libvpx
16+
# ninja
17+
# opus
18+
# pkgconf
19+
# - git submodule update --init --recursive
20+
# test_all_script:
21+
# - |
22+
# # TODO(iphydf): Investigate FreeBSD failures on these tests.
23+
# sed -Ei -e '/\(dht_getnodes_api\)/s/^/#/' auto_tests/CMakeLists.txt
24+
# cmake . \
25+
# -DMIN_LOGGER_LEVEL=TRACE \
26+
# -DMUST_BUILD_TOXAV=ON \
27+
# -DNON_HERMETIC_TESTS=OFF \
28+
# -DTEST_TIMEOUT_SECONDS=50 \
29+
# -DUSE_IPV6=OFF \
30+
# -DAUTOTEST=ON \
31+
# -GNinja
32+
# cmake --build . --target install
33+
# ctest -j50 --output-on-failure --rerun-failed --repeat until-pass:3 || ctest -j50 --output-on-failure --rerun-failed --repeat until-pass:3

0 commit comments

Comments
 (0)