2022-01-02 00:06:26 +01:00

184 lines
4.6 KiB
Groovy

pipeline {
agent any
stages {
stage('Build Windows Debug') {
when {
branch 'develop'
beforeAgent true
}
agent {
docker {
image 'llvm-mingw:latest'
reuseNode true
}
}
environment {
DEBUG = 1
}
steps {
sh 'bash ./build.sh win32'
sh 'bash ./build.sh win64'
}
}
stage('Build Linux Debug') {
when {
branch 'develop'
beforeAgent true
}
agent {
docker {
image 'llvm:latest'
reuseNode true
}
}
environment {
DEBUG = 1
}
steps {
sh 'bash ./build.sh lin32'
sh 'bash ./build.sh lin64'
}
}
stage('Build MacOSX Debug') {
when {
branch 'develop'
beforeAgent true
}
agent {
docker {
image 'osxcross:latest'
reuseNode true
}
}
environment {
DEBUG = 1
}
steps {
sh 'bash ./build.sh mac'
}
}
stage('Archive Debug') {
when {
branch 'develop'
}
steps {
zip zipFile: 'Debug.zip', archive: true, dir: 'build/Plugin'
sh 'rm -rf build'
}
}
stage('Build Windows Stageing') {
when {
branch 'stage'
beforeAgent true
}
agent {
docker {
image 'llvm-mingw:latest'
reuseNode true
}
}
steps {
sh 'bash ./build.sh win32'
sh 'bash ./build.sh win64'
}
}
stage('Build Linux Stageing') {
when {
branch 'stage'
beforeAgent true
}
agent {
docker {
image 'llvm:latest'
reuseNode true
}
}
steps {
sh 'bash ./build.sh lin32'
sh 'bash ./build.sh lin64'
}
}
stage('Build MacOSX Stageing') {
when {
branch 'stage'
beforeAgent true
}
agent {
docker {
image 'osxcross:latest'
reuseNode true
}
}
steps {
sh 'bash ./build.sh mac'
}
}
stage('Archive Stageing') {
when {
branch 'stage'
}
steps {
zip zipFile: 'Stage.zip', archive: true, dir: 'build/Plugin'
sh 'rm -rf build'
}
}
stage('Build Windows Release') {
when {
branch 'master'
beforeAgent true
}
agent {
docker {
image 'llvm-mingw:latest'
reuseNode true
}
}
steps {
sh 'bash ./build.sh win32'
sh 'bash ./build.sh win64'
}
}
stage('Build Linux Release') {
when {
branch 'master'
beforeAgent true
}
agent {
docker {
image 'llvm:latest'
reuseNode true
}
}
steps {
sh 'bash ./build.sh lin32'
sh 'bash ./build.sh lin64'
}
}
stage('Build MacOSX Release') {
when {
branch 'master'
beforeAgent true
}
agent {
docker {
image 'osxcross:latest'
reuseNode true
}
}
steps {
sh 'bash ./build.sh mac'
}
}
stage('Archive Release') {
when {
branch 'master'
beforeAgent true
}
steps {
zip zipFile: 'Release.zip', archive: true, dir: 'build/Plugin'
sh 'rm -rf build'
}
}
}
}