2 Commits
Author SHA1 Message Date
andrew 04d02261e9 Install clang from Ubuntu and push image from buildx
CI / pre-commit (push) Has been cancelled
CI / test (-DCMAKE_BUILD_TYPE=Debug, debug) (push) Has been cancelled
CI / test (-DCMAKE_CXX_FLAGS=-DUSE_64_BIT=1, 64-bit-versions) (push) Has been cancelled
CI / test (-DCMAKE_C_COMPILER=gcc -DCMAKE_CXX_COMPILER=g++, gcc) (push) Has been cancelled
CI / test (-DUSE_SIMD_FALLBACK=ON, simd-fallback) (push) Has been cancelled
CI / release (amd64, ubuntu-latest-amd64) (push) Has been cancelled
CI / release (arm64, ubuntu-latest-arm64) (push) Has been cancelled
CI / coverage (push) Has been cancelled
CI / build-image (amd64, ubuntu-latest-amd64) (push) Has been cancelled
CI / build-image (arm64, ubuntu-latest-arm64) (push) Has been cancelled
apt.llvm.org has no repository for the current ubuntu:rolling release,
and nothing pins clang 20 - CC=clang already resolved to the distro
clang. Drop the llvm.sh step along with its helper packages.

docker build now runs under the buildx docker-container driver, which
keeps the result in the build cache unless told otherwise, so push
directly from the build instead of tagging locally.
2026-06-12 12:06:45 -04:00
andrew dd8f006d3f Remove docker socket debug step and unneeded sudo
Jobs run as root in the job container; the earlier permission errors
were SELinux denials on the mounted podman socket, fixed in the runner
config with --security-opt label=disable.
2026-06-12 11:58:30 -04:00
2 changed files with 9 additions and 28 deletions
+7 -20
View File
@@ -16,39 +16,26 @@ jobs:
steps:
- uses: actions/checkout@v4
- name: Debug docker socket
run: |
id
sudo id || true
ls -la /var/run/docker.sock /run/user 2>&1 || true
sudo ls -laL /var/run/docker.sock 2>&1 || true
findmnt /var/run/docker.sock 2>&1 || true
env | grep -iE 'docker|container|podman' || true
sudo docker version 2>&1 || true
docker version 2>&1 || true
- name: Log in to registry
run: |
echo "${{ secrets.REGISTRY_TOKEN }}" \
| sudo docker login -u "${{ secrets.REGISTRY_USER }}" --password-stdin git.weaselab.dev
| docker login -u "${{ secrets.REGISTRY_USER }}" --password-stdin git.weaselab.dev
- name: Build and push image if changed
run: |
image=git.weaselab.dev/weaselab/conflict-set-ci
tag="$(sha256sum Dockerfile .pre-commit-config.yaml | sha256sum | cut -c 1-16)-${{ matrix.arch }}"
latest=latest-${{ matrix.arch }}
if sudo docker manifest inspect "$image:$tag" > /dev/null 2>&1; then
if [ "$(sudo docker manifest inspect "$image:$tag")" = "$(sudo docker manifest inspect "$image:$latest" 2> /dev/null)" ]; then
if docker manifest inspect "$image:$tag" > /dev/null 2>&1; then
if [ "$(docker manifest inspect "$image:$tag")" = "$(docker manifest inspect "$image:$latest" 2> /dev/null)" ]; then
echo "$image:$latest is up to date"
else
sudo docker pull "$image:$tag"
sudo docker tag "$image:$tag" "$image:$latest"
sudo docker push "$image:$latest"
docker pull "$image:$tag"
docker tag "$image:$tag" "$image:$latest"
docker push "$image:$latest"
fi
else
sudo docker build -t "$image:$tag" -t "$image:$latest" .
sudo docker push "$image:$tag"
sudo docker push "$image:$latest"
docker build --push -t "$image:$tag" -t "$image:$latest" .
fi
pre-commit:
+2 -8
View File
@@ -10,20 +10,19 @@ RUN apt-get upgrade -y
RUN TZ=America/Los_Angeles DEBIAN_FRONTEND=noninteractive apt-get install -y \
build-essential \
ccache \
clang \
cmake \
curl \
devscripts \
gcovr \
git \
gnupg \
libc6-dbg \
lsb-release \
llvm \
mold \
ninja-build \
pre-commit \
python3-requests \
rpm \
software-properties-common \
texlive-full \
wget \
zstd
@@ -45,11 +44,6 @@ RUN curl -Ls https://sourceware.org/pub/valgrind/valgrind-3.22.0.tar.bz2 -o valg
cd .. && \
rm -rf /tmp/*
# Recent clang
RUN wget https://apt.llvm.org/llvm.sh && chmod +x ./llvm.sh && ./llvm.sh 20
RUN apt-get -y install clang llvm
# Set after building valgrind, which doesn't build with clang for some reason
ENV CC=clang
ENV CXX=clang++