Terst
This commit is contained in:
Vendored
+18
-63
@@ -1,75 +1,30 @@
|
||||
pipeline {
|
||||
agent any
|
||||
|
||||
options {
|
||||
timestamps()
|
||||
buildDiscarder(logRotator(numToKeepStr: '10'))
|
||||
}
|
||||
agent none
|
||||
|
||||
stages {
|
||||
stage('Build Docker Image') {
|
||||
steps {
|
||||
sh '''
|
||||
docker build \
|
||||
-t cpp-mingw-vcpkg:latest \
|
||||
-f docker/cpp-mingw-vcpkg/Dockerfile .
|
||||
'''
|
||||
}
|
||||
}
|
||||
|
||||
stage('Build Linux') {
|
||||
agent { label 'linux' }
|
||||
steps {
|
||||
sh '''
|
||||
docker run --rm \
|
||||
-v "$PWD:/workspace" \
|
||||
-w /workspace \
|
||||
cpp-mingw-vcpkg:latest \
|
||||
bash -c "
|
||||
rm -rf build/linux &&
|
||||
cmake -S . -B build/linux -G Ninja \
|
||||
-DCMAKE_BUILD_TYPE=Release \
|
||||
-DCMAKE_TOOLCHAIN_FILE=/opt/vcpkg/scripts/buildsystems/vcpkg.cmake &&
|
||||
cmake --build build/linux
|
||||
"
|
||||
cmake -S . -B build/linux -G Ninja -DCMAKE_BUILD_TYPE=Release
|
||||
cmake --build build/linux
|
||||
'''
|
||||
}
|
||||
}
|
||||
|
||||
stage('Build Windows MinGW') {
|
||||
steps {
|
||||
sh '''
|
||||
docker run --rm \
|
||||
-v "$PWD:/workspace" \
|
||||
-w /workspace \
|
||||
cpp-mingw-vcpkg:latest \
|
||||
bash -c "
|
||||
rm -rf build/windows &&
|
||||
cmake -S . -B build/windows -G Ninja \
|
||||
-DCMAKE_BUILD_TYPE=Release \
|
||||
-DCMAKE_TOOLCHAIN_FILE=/opt/vcpkg/scripts/buildsystems/vcpkg.cmake \
|
||||
-DVCPKG_TARGET_TRIPLET=x64-mingw-static \
|
||||
-DCMAKE_C_COMPILER=x86_64-w64-mingw32-gcc \
|
||||
-DCMAKE_CXX_COMPILER=x86_64-w64-mingw32-g++ &&
|
||||
cmake --build build/windows
|
||||
"
|
||||
'''
|
||||
}
|
||||
}
|
||||
|
||||
stage('Package') {
|
||||
steps {
|
||||
sh '''
|
||||
mkdir -p artifacts
|
||||
tar -czf artifacts/linux-build.tar.gz -C build linux
|
||||
zip -r artifacts/windows-build.zip build/windows
|
||||
'''
|
||||
}
|
||||
}
|
||||
|
||||
stage('Archive') {
|
||||
steps {
|
||||
archiveArtifacts artifacts: 'artifacts/*', fingerprint: true
|
||||
}
|
||||
}
|
||||
stage('Check Windows Agent') {
|
||||
agent { label 'windows' }
|
||||
steps {
|
||||
bat '''
|
||||
echo Windows agent works
|
||||
hostname
|
||||
where cl
|
||||
where cmake
|
||||
where ninja
|
||||
where git
|
||||
java -version
|
||||
'''
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user