CICD: Move Windows Build to New Container.

Move the GitHub Action that builds the Windows artefacts to use the new
subsurface/mxe-build:3.1.0 container.
Also rename references to the old container in scripts and
documantation.

Signed-off-by: Michael Keller <github@ike.ch>
This commit is contained in:
Michael Keller 2024-01-22 07:54:06 +13:00
parent 89506d9782
commit 05ef933ff7
4 changed files with 7 additions and 7 deletions

View file

@ -15,7 +15,7 @@ jobs:
buildWindows: buildWindows:
runs-on: ubuntu-latest runs-on: ubuntu-latest
container: container:
image: docker://subsurface/mxe-build-container:3.0.1 image: docker://subsurface/mxe-build:3.1.0
steps: steps:
- name: checkout sources - name: checkout sources

View file

@ -12,7 +12,7 @@ git clone https://github.com/subsurface/subsurface
cd subsurface cd subsurface
git submodule init git submodule init
git submodule update git submodule update
docker run -v /some/path/windows:/__w subsurface/mxe-build-container:2.2 /bin/bash /__w/subsurface/packaging/windows/create-win-installer.sh docker run -v /some/path/windows:/__w subsurface/mxe-build:3.1.0 /bin/bash /__w/subsurface/packaging/windows/create-win-installer.sh
``` ```
This will result in subsurface-VERSION.exe and smtk2ssrf-VERSION.exe to be created. This will result in subsurface-VERSION.exe and smtk2ssrf-VERSION.exe to be created.

View file

@ -7,12 +7,12 @@ MXE_SHA="c0bfefc57a00fdf6cb5278263e21a478e47b0bf5"
SCRIPTPATH=$(dirname $0) SCRIPTPATH=$(dirname $0)
# version of the docker image # version of the docker image
VERSION=3.0.1 VERSION=3.1.0
pushd $SCRIPTPATH pushd $SCRIPTPATH
# we use the 'experimental' --squash argument to significantly reduce the size of the massively huge # we use the 'experimental' --squash argument to significantly reduce the size of the massively huge
# Docker container this produces # Docker container this produces
docker build -t subsurface/mxe-build-container:$VERSION --build-arg=mxe_sha=$MXE_SHA -f Dockerfile . docker build -t subsurface/mxe-build:$VERSION --build-arg=mxe_sha=$MXE_SHA -f Dockerfile .
docker images docker images
popd popd

View file

@ -5,10 +5,10 @@ This document assumes you have alreay installed docker and have checked out subs
If you just want to build with the current mxe build container then starting from the folder above subsurface run If you just want to build with the current mxe build container then starting from the folder above subsurface run
```bash ```bash
docker run -v $PWD/win32:/win/win32 -v $PWD/subsurface:/win/subsurface --name=mybuilder -w /win -d subsurface/mxe-build-container:x.y /bin/sleep 60m docker run -v $PWD/win32:/win/win32 -v $PWD/subsurface:/win/subsurface --name=mybuilder -w /win -d subsurface/mxe-build:x.y /bin/sleep 60m
``` ```
replacing the x.y in the mxe-build-container tag with the current version e.g. 2.0 replacing the x.y in the mxe-build tag with the current version e.g. 3.1.0
Next you need to prep the container by installing some prerequisites Next you need to prep the container by installing some prerequisites
@ -29,7 +29,7 @@ Which will copy the installer into the win32 folder which will be a sibling of t
## Modifying the container ## Modifying the container
If you want to make changes to the build environment used in the conatiner If you want to make changes to the build environment used in the conatiner
The script scripts/docker/mxe-build-container.sh will build the Docker image itself. The script scripts/docker/mxe-build-container/build-container.sh will build the Docker image itself.
The sha of the version of MXE we are using is built into this, so you can update that to whatever version is required, and modify dockerfiles and settings-stage1.mk and settings-stage2.mk to pull in any other prerequisites as required. The sha of the version of MXE we are using is built into this, so you can update that to whatever version is required, and modify dockerfiles and settings-stage1.mk and settings-stage2.mk to pull in any other prerequisites as required.
If you are working on updating the container then you should incrment the minor version of the variable VERSION in the script as otherwise it will clash with the version used in production If you are working on updating the container then you should incrment the minor version of the variable VERSION in the script as otherwise it will clash with the version used in production