From c8a735c317da9e0f30fd9f5ab7d9ff1a7d675b23 Mon Sep 17 00:00:00 2001
From: David Bauer <mail@david-bauer.net>
Date: Sat, 2 Dec 2023 00:21:11 +0100
Subject: [PATCH] ci: build Gluon in own Docker image

Build the CI integration test in our own docker container. This way, we
can make sure Gluon builds actually succeed there.

This also has the advantage of becoming independent from the host
version of GitHubs CI runners.

Signed-off-by: David Bauer <mail@david-bauer.net>
---
 .github/workflows/build-gluon.yml       | 8 ++++----
 contrib/actions/install-dependencies.sh | 8 --------
 2 files changed, 4 insertions(+), 12 deletions(-)
 delete mode 100755 contrib/actions/install-dependencies.sh

diff --git a/.github/workflows/build-gluon.yml b/.github/workflows/build-gluon.yml
index f395b9d5..3d97b904 100644
--- a/.github/workflows/build-gluon.yml
+++ b/.github/workflows/build-gluon.yml
@@ -44,11 +44,11 @@ jobs:
       - name: Show system information
         run: contrib/actions/show-system-info.sh
 
-      - name: Install Dependencies
-        run: sudo contrib/actions/install-dependencies.sh
+      - name: Build Docker container
+        run: docker build -t gluon-ci-container contrib/docker
 
-      - name: Build
-        run: contrib/actions/run-build.sh ${{ matrix.target }}
+      - name: Build Gluon
+        run: docker run --rm -v $PWD:/gluon-ci -w /gluon-ci --user "$(id -u):$(id -g)" gluon-ci-container contrib/actions/run-build.sh ${{ matrix.target }}
 
       - name: Archive build logs
         if: ${{ !cancelled() }}
diff --git a/contrib/actions/install-dependencies.sh b/contrib/actions/install-dependencies.sh
deleted file mode 100755
index 4f2d28c3..00000000
--- a/contrib/actions/install-dependencies.sh
+++ /dev/null
@@ -1,8 +0,0 @@
-#!/bin/sh
-
-set -e
-
-apt-get -y update
-apt-get -y install git build-essential python3 gawk unzip libncurses5-dev zlib1g-dev libssl-dev libelf-dev wget rsync time qemu-utils
-apt-get -y clean
-rm -rf /var/lib/apt/lists/*
-- 
GitLab