mirror of
https://gitlab.winehq.org/wine/vkd3d.git
synced 2024-11-21 16:46:41 -08:00
ci: Build crosstests in a dedicated CI job.
Mostly to avoid polluting other logs and artifacts, and also to avoid recompiling crosstests over and over. Eventually the artifacts produced at this stage should be run on native Windows.
This commit is contained in:
parent
74d79c7e45
commit
81da13b9e2
Notes:
Alexandre Julliard
2023-09-26 22:47:59 +02:00
Approved-by: Henri Verbeet (@hverbeet) Approved-by: Alexandre Julliard (@julliard) Merge-Request: https://gitlab.winehq.org/wine/vkd3d/-/merge_requests/359
19
gitlab/build-crosstest
Executable file
19
gitlab/build-crosstest
Executable file
@ -0,0 +1,19 @@
|
||||
#!/bin/bash
|
||||
|
||||
echo "Building $(git log -1)"
|
||||
echo "---"
|
||||
|
||||
COMMIT=$(git rev-parse --short HEAD)
|
||||
|
||||
set -Eeuxo pipefail
|
||||
|
||||
./autogen.sh
|
||||
rm -fr build
|
||||
mkdir build
|
||||
cd build
|
||||
../configure && make -j$(nproc) crosstest || touch ../pipeline_failed
|
||||
|
||||
mkdir -p ../artifacts/$COMMIT
|
||||
rsync -Rr tests/*.exe ../artifacts/$COMMIT
|
||||
|
||||
git reset --hard
|
@ -11,9 +11,9 @@ set -Eeuxo pipefail
|
||||
rm -fr build
|
||||
mkdir build
|
||||
cd build
|
||||
../configure --enable-demos && make -j$(nproc) && make -j$(nproc) crosstest && make -j$(nproc) check || touch ../pipeline_failed
|
||||
../configure --enable-demos && make -j$(nproc) && make -j$(nproc) check || touch ../pipeline_failed
|
||||
|
||||
mkdir -p ../artifacts/$COMMIT
|
||||
rsync -Rr doc/* tests/*.exe test-suite.log tests/*.log tests/*/*.log ../artifacts/$COMMIT
|
||||
rsync -Rr doc/* test-suite.log tests/*.log tests/*/*.log ../artifacts/$COMMIT
|
||||
|
||||
git reset --hard
|
||||
|
@ -11,9 +11,9 @@ set -Eeuxo pipefail
|
||||
rm -fr build
|
||||
mkdir build
|
||||
cd build
|
||||
../configure && make -j$(sysctl -n hw.ncpu) && make -j$(sysctl -n hw.ncpu) crosstest && make -j$(sysctl -n hw.ncpu) check || touch ../pipeline_failed
|
||||
../configure && make -j$(sysctl -n hw.ncpu) && make -j$(sysctl -n hw.ncpu) check || touch ../pipeline_failed
|
||||
|
||||
mkdir -p ../artifacts/$COMMIT
|
||||
rsync -Rr tests/*.exe test-suite.log tests/*.log tests/*/*.log ../artifacts/$COMMIT
|
||||
rsync -Rr test-suite.log tests/*.log tests/*/*.log ../artifacts/$COMMIT
|
||||
|
||||
git reset --hard
|
||||
|
@ -56,6 +56,32 @@ build-llvmpipe-32:
|
||||
CC: 'gcc -m32'
|
||||
VKD3D_SHADER_CONFIG: 'force_validation'
|
||||
|
||||
build-crosstest:
|
||||
stage: build
|
||||
rules:
|
||||
- if: $CI_PIPELINE_SOURCE == 'merge_request_event'
|
||||
image: $CI_REGISTRY/wine/vkd3d:debian-bookworm
|
||||
interruptible: true
|
||||
needs:
|
||||
- job: build-image
|
||||
optional: true
|
||||
dependencies: []
|
||||
script:
|
||||
- git config --global --add safe.directory $CI_PROJECT_DIR
|
||||
- git clean -fdx
|
||||
- git reset --hard
|
||||
- rm -fr .git/rebase-merge
|
||||
- mkdir artifacts
|
||||
- cat /proc/cpuinfo > artifacts/cpuinfo.txt
|
||||
- cat /proc/meminfo > artifacts/meminfo.txt
|
||||
- vulkaninfo > artifacts/vulkaninfo.txt
|
||||
- git rebase $CI_MERGE_REQUEST_DIFF_BASE_SHA --exec ./gitlab/build-crosstest
|
||||
- if [ -f pipeline_failed ] ; then exit 1 ; fi
|
||||
artifacts:
|
||||
when: always
|
||||
paths:
|
||||
- artifacts
|
||||
|
||||
build-mac:
|
||||
stage: build
|
||||
rules:
|
||||
|
Loading…
Reference in New Issue
Block a user