pipeline { agent any options { timestamps() buildDiscarder(logRotator(numToKeepStr: '10')) } stages { stage('Build Linux') { steps { sh ''' mkdir -p build/linux g++ main.cpp -o build/linux/test_app ''' } } stage('Build Windows') { steps { sh ''' mkdir -p build/windows x86_64-w64-mingw32-g++ main.cpp \ -static \ -static-libgcc \ -static-libstdc++ \ -o build/windows/test_app.exe ''' } } stage('Run Linux') { steps { sh ''' ./build/linux/test_app ''' } } stage('Package') { steps { sh ''' cd build tar -czf linux-build.tar.gz linux zip -r windows-build.zip windows ''' } } stage('Archive') { steps { archiveArtifacts artifacts: 'build/linux-build.tar.gz, build/windows-build.zip', fingerprint: true } } } }