Skip to content

Commit c5f04a6

Browse files
authored
Merge pull request #4 from jacob-hughes/add_ci
Add basic buildbot CI
2 parents 6242b19 + 75b17ea commit c5f04a6

File tree

3 files changed

+42
-0
lines changed

3 files changed

+42
-0
lines changed

.buildbot.sh

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
#!/bin/sh
2+
3+
set -eu
4+
5+
# First build without the JIT and check the tests still work.
6+
./autogen.sh
7+
mkdir build && cd build
8+
../configure
9+
make btest -j $(nproc)

.buildbot_dockerfile_debian

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
FROM debian:latest
2+
WORKDIR /ci
3+
RUN --mount=target=/var/lib/apt/lists,type=cache,sharing=locked \
4+
--mount=target=/var/cache/apt,type=cache,sharing=locked \
5+
rm -f /etc/apt/apt.conf.d/docker-clean && \
6+
apt-get update && \
7+
apt-get -y install clang-15 autoconf make curl procps file git cmake python3 ruby-full \
8+
libtinfo-dev libzip-dev mold ninja-build gdb && \
9+
update-alternatives --install /usr/bin/cc cc /usr/bin/clang-15 999 && \
10+
update-alternatives --set cc /usr/bin/clang-15 && \
11+
update-alternatives --install /usr/bin/c++ c++ /usr/bin/clang++-15 999 && \
12+
update-alternatives --set c++ /usr/bin/clang++-15 && \
13+
update-alternatives --install /usr/bin/ld ld /usr/bin/mold 999 && \
14+
update-alternatives --set ld /usr/bin/mold && \
15+
ln -sf /usr/bin/clang-15 /usr/bin/clang && \
16+
ln -sf /usr/bin/clang++-15 /usr/bin/clang++
17+
ARG CI_UID
18+
RUN useradd -m -u ${CI_UID} ci && chown ${CI_UID}:${CI_UID} .
19+
ARG CI_RUNNER
20+
ENV CI_RUNNER=${CI_RUNNER}
21+
COPY --chown=${CI_UID}:${CI_UID} . .
22+
CMD ["sh", "-x", ".buildbot.sh"]

.github/workflows/sdci.yml

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
on:
2+
pull_request:
3+
merge_group:
4+
5+
# This is required to silence emails about the workflow having no jobs.
6+
# We simply define a dummy job that does nothing much.
7+
jobs:
8+
dummy:
9+
runs-on: ubuntu-latest
10+
steps:
11+
- run: /usr/bin/true

0 commit comments

Comments
 (0)