mirror of
https://gitlab.winehq.org/wine/wine.git
synced 2024-11-19 17:06:04 -07:00
gitlab: Run tests on Debian after the daily commit round.
This commit is contained in:
parent
0f96288080
commit
1d0f66a3c6
5 changed files with 92 additions and 14 deletions
|
@ -3,9 +3,11 @@
|
||||||
stages:
|
stages:
|
||||||
- image
|
- image
|
||||||
- build
|
- build
|
||||||
|
- test
|
||||||
- deploy
|
- deploy
|
||||||
|
|
||||||
include:
|
include:
|
||||||
- local: "/tools/gitlab/image.yml"
|
- local: "/tools/gitlab/image.yml"
|
||||||
- local: "/tools/gitlab/build.yml"
|
- local: "/tools/gitlab/build.yml"
|
||||||
|
- local: "/tools/gitlab/test.yml"
|
||||||
- local: "/tools/gitlab/release.yml"
|
- local: "/tools/gitlab/release.yml"
|
||||||
|
|
|
@ -10,13 +10,19 @@ set -Eeuxo pipefail
|
||||||
autoreconf
|
autoreconf
|
||||||
|
|
||||||
cd build64
|
cd build64
|
||||||
../configure -C --enable-win64 --enable-werror --with-mingw
|
../configure -q -C --enable-win64 --enable-werror --with-mingw
|
||||||
make -s -j$(nproc)
|
make -s -j$(nproc)
|
||||||
cd ..
|
cd ..
|
||||||
|
|
||||||
cd build32
|
cd build32
|
||||||
../configure -C --enable-werror --with-mingw
|
../configure -q -C --enable-werror --with-mingw
|
||||||
make -s -j$(nproc)
|
make -s -j$(nproc)
|
||||||
cd ..
|
cd ..
|
||||||
|
|
||||||
git reset --hard
|
if test -s .git/rebase-merge/git-rebase-todo
|
||||||
|
then
|
||||||
|
git reset --hard
|
||||||
|
else
|
||||||
|
make -s -j$(nproc) -C build32 install-lib install-test DESTDIR=$BASEDIR
|
||||||
|
make -s -j$(nproc) -C build64 install-lib install-test DESTDIR=$BASEDIR
|
||||||
|
fi
|
||||||
|
|
|
@ -20,6 +20,7 @@
|
||||||
- export CCACHE_COMPILERCHECK=content
|
- export CCACHE_COMPILERCHECK=content
|
||||||
- export PATH="/usr/lib/ccache:$PATH"
|
- export PATH="/usr/lib/ccache:$PATH"
|
||||||
- mkdir -p build32 build64
|
- mkdir -p build32 build64
|
||||||
|
- rm -fr .git/rebase-merge # in case a previous CI run failed in git rebase
|
||||||
|
|
||||||
build-linux:
|
build-linux:
|
||||||
extends: .wine-build
|
extends: .wine-build
|
||||||
|
@ -31,7 +32,6 @@ build-linux:
|
||||||
- build64/config.log
|
- build64/config.log
|
||||||
- build32/config.log
|
- build32/config.log
|
||||||
script:
|
script:
|
||||||
- rm -fr .git/rebase-merge # in case a previous CI run failed in git rebase
|
|
||||||
- git rebase $CI_MERGE_REQUEST_DIFF_BASE_SHA --exec ./tools/gitlab/build-linux
|
- git rebase $CI_MERGE_REQUEST_DIFF_BASE_SHA --exec ./tools/gitlab/build-linux
|
||||||
|
|
||||||
build-mac:
|
build-mac:
|
||||||
|
@ -46,26 +46,32 @@ build-mac:
|
||||||
- build64/config.log
|
- build64/config.log
|
||||||
- build32/config.log
|
- build32/config.log
|
||||||
script:
|
script:
|
||||||
- rm -fr .git/rebase-merge
|
|
||||||
- export PATH="/usr/local/opt/ccache/libexec:$PATH"
|
- export PATH="/usr/local/opt/ccache/libexec:$PATH"
|
||||||
- git rebase $CI_MERGE_REQUEST_DIFF_BASE_SHA --exec ./tools/gitlab/build-mac
|
- git rebase $CI_MERGE_REQUEST_DIFF_BASE_SHA --exec ./tools/gitlab/build-mac
|
||||||
|
|
||||||
build-winetest:
|
build-daily-linux:
|
||||||
extends: .wine-build
|
extends: .wine-build
|
||||||
rules:
|
rules:
|
||||||
- if: $CI_PIPELINE_SOURCE == 'trigger' && $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH
|
- if: $CI_PIPELINE_SOURCE == 'trigger' && $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH
|
||||||
|
artifacts:
|
||||||
|
expire_in: 1 day
|
||||||
|
paths:
|
||||||
|
- usr/local/
|
||||||
|
script:
|
||||||
|
- ./tools/gitlab/build-linux
|
||||||
|
|
||||||
|
build-winetest:
|
||||||
|
stage: build
|
||||||
|
image: $CI_DEPENDENCY_PROXY_DIRECT_GROUP_IMAGE_PREFIX/debian:bullseye
|
||||||
|
rules:
|
||||||
|
- if: $CI_PIPELINE_SOURCE == 'trigger' && $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH
|
||||||
|
needs:
|
||||||
|
- job: build-daily-linux
|
||||||
artifacts:
|
artifacts:
|
||||||
name: winetest
|
name: winetest
|
||||||
paths:
|
paths:
|
||||||
- winetest.exe
|
- winetest.exe
|
||||||
- winetest64.exe
|
- winetest64.exe
|
||||||
script:
|
script:
|
||||||
- cd build64
|
|
||||||
- ../configure -q -C --enable-win64 --with-mingw
|
|
||||||
- make -s -j$(nproc) install-test DESTDIR=$BASEDIR
|
|
||||||
- cd ../build32
|
|
||||||
- ../configure -q -C --with-mingw
|
|
||||||
- make -s -j$(nproc) install-test DESTDIR=$BASEDIR
|
|
||||||
- cd ..
|
|
||||||
- mv usr/local/lib/wine/i386-windows/winetest.exe winetest.exe
|
- mv usr/local/lib/wine/i386-windows/winetest.exe winetest.exe
|
||||||
- mv usr/local/lib/wine/x86_64-windows/winetest.exe winetest64.exe
|
- mv usr/local/lib/wine/x86_64-windows/winetest.exe winetest64.exe
|
||||||
|
|
|
@ -51,7 +51,11 @@ RUN export DEBIAN_FRONTEND=noninteractive; \
|
||||||
samba-dev:amd64 \
|
samba-dev:amd64 \
|
||||||
unixodbc-dev:amd64 unixodbc-dev:i386 \
|
unixodbc-dev:amd64 unixodbc-dev:i386 \
|
||||||
x11proto-dev && \
|
x11proto-dev && \
|
||||||
apt-get install -y ccache && \
|
apt-get install -y ccache netbase curl ca-certificates xserver-xorg-video-dummy xserver-xorg xfonts-base xinit fvwm \
|
||||||
|
winbind fonts-liberation2 fonts-noto-core fonts-noto-cjk pulseaudio libasound2-plugins:amd64 libasound2-plugins:i386 \
|
||||||
|
libmjpegutils-2.1-0:amd64 libmjpegutils-2.1-0:i386 gstreamer1.0-libav:amd64 gstreamer1.0-libav:i386 \
|
||||||
|
gstreamer1.0-plugins-base:amd64 gstreamer1.0-plugins-good:amd64 gstreamer1.0-plugins-bad:amd64 gstreamer1.0-plugins-ugly:amd64 \
|
||||||
|
gstreamer1.0-plugins-base:i386 gstreamer1.0-plugins-good:i386 gstreamer1.0-plugins-bad:i386 gstreamer1.0-plugins-ugly:i386 && \
|
||||||
apt-get clean && \
|
apt-get clean && \
|
||||||
useradd -m gitlab
|
useradd -m gitlab
|
||||||
|
|
||||||
|
|
60
tools/gitlab/test.yml
Normal file
60
tools/gitlab/test.yml
Normal file
|
@ -0,0 +1,60 @@
|
||||||
|
# CI script for testing Wine
|
||||||
|
|
||||||
|
.wine-test:
|
||||||
|
stage: test
|
||||||
|
image: $CI_REGISTRY/wine/wine:debian-bullseye
|
||||||
|
interruptible: true
|
||||||
|
variables:
|
||||||
|
GECKO_VER: 2.47.3
|
||||||
|
MONO_VER: 7.3.0
|
||||||
|
cache:
|
||||||
|
- key: wine-gecko-$GECKO_VER
|
||||||
|
paths:
|
||||||
|
- wine-gecko-$GECKO_VER-x86.msi
|
||||||
|
- wine-gecko-$GECKO_VER-x86_64.msi
|
||||||
|
- key: wine-mono-$MONO_VER
|
||||||
|
paths:
|
||||||
|
- wine-mono-$MONO_VER-x86.msi
|
||||||
|
before_script:
|
||||||
|
- export BASEDIR=$PWD
|
||||||
|
- export PATH=$BASEDIR/usr/local/bin:$PATH
|
||||||
|
- export DISPLAY=:0
|
||||||
|
- export LC_ALL=C.UTF-8
|
||||||
|
- export WINEDEBUG=err-all,fixme-all
|
||||||
|
- |
|
||||||
|
cat >$HOME/xorg.conf << EOF
|
||||||
|
Section "Device"
|
||||||
|
Identifier "dummy"
|
||||||
|
Driver "dummy"
|
||||||
|
VideoRam 32768
|
||||||
|
EndSection
|
||||||
|
EOF
|
||||||
|
- echo 'exec /usr/bin/fvwm -f config -c "Style * MwmDecor" 2>/dev/null' >$HOME/.xinitrc
|
||||||
|
- startx -- -config $HOME/xorg.conf $DISPLAY &
|
||||||
|
- test -f wine-gecko-$GECKO_VER-x86.msi || curl -o wine-gecko-$GECKO_VER-x86.msi https://dl.winehq.org/wine/wine-gecko/$GECKO_VER/wine-gecko-$GECKO_VER-x86.msi
|
||||||
|
- test -f wine-gecko-$GECKO_VER-x86_64.msi || curl -o wine-gecko-$GECKO_VER-x86_64.msi https://dl.winehq.org/wine/wine-gecko/$GECKO_VER/wine-gecko-$GECKO_VER-x86_64.msi
|
||||||
|
- test -f wine-mono-$MONO_VER-x86.msi || curl -o wine-mono-$MONO_VER-x86.msi https://dl.winehq.org/wine/wine-mono/$MONO_VER/wine-mono-$MONO_VER-x86.msi
|
||||||
|
- mkdir -p $HOME/Documents $HOME/Desktop usr/local/share/wine/gecko usr/local/share/wine/mono
|
||||||
|
- ln -sf $BASEDIR/wine-gecko-$GECKO_VER-x86.msi $BASEDIR/wine-gecko-$GECKO_VER-x86_64.msi usr/local/share/wine/gecko
|
||||||
|
- ln -sf $BASEDIR/wine-mono-$MONO_VER-x86.msi usr/local/share/wine/mono
|
||||||
|
- pulseaudio --start --exit-idle-time=-1
|
||||||
|
- wine wineboot.exe -u
|
||||||
|
- wineserver -w
|
||||||
|
|
||||||
|
debian-32:
|
||||||
|
extends: .wine-test
|
||||||
|
rules:
|
||||||
|
- if: $CI_PIPELINE_SOURCE == 'trigger' && $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH
|
||||||
|
needs:
|
||||||
|
- job: build-daily-linux
|
||||||
|
script:
|
||||||
|
- wine usr/local/lib/wine/i386-windows/winetest.exe -q -t gitlab-$CI_JOB_NAME -m $CI_JOB_URL
|
||||||
|
|
||||||
|
debian-64:
|
||||||
|
extends: .wine-test
|
||||||
|
rules:
|
||||||
|
- if: $CI_PIPELINE_SOURCE == 'trigger' && $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH
|
||||||
|
needs:
|
||||||
|
- job: build-daily-linux
|
||||||
|
script:
|
||||||
|
- wine usr/local/lib/wine/x86_64-windows/winetest.exe -q -t gitlab-$CI_JOB_NAME -m $CI_JOB_URL
|
Loading…
Reference in a new issue