diff --git a/Jenkinsfile b/Jenkinsfile index 9bbfc02..12c0cf0 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -1,41 +1,86 @@ pipeline { - agent { - label 'linux && x84 && teaspeak' - } + agent any + + parallel linux_amd64: { + agent { + label 'linux && amd64 && teaspeak' + } - environment { - /* General flags */ - CXX_FLAGS = '' - C_FLAGS = '' - - /* CMake specific flags */ - CMAKE_OPTIONS = '' - CMAKE_MAKE_OPTIONS = '' - - /* Make specific flags */ - MAKE_OPTIONS = '' - } + environment { + /* General flags */ + CXX_FLAGS = '' + C_FLAGS = '' + + /* CMake specific flags */ + CMAKE_OPTIONS = '' + CMAKE_MAKE_OPTIONS = '' + + /* Make specific flags */ + MAKE_OPTIONS = '' + } - stages { - stage ('Initialize libraries') { - steps { - sh 'apt-get update' - sh 'git submodule update --init --remote --recursive' - sh 'git submodule update --merge' - sh './attach_modules.sh' - sh 'cd libraries; ./build.sh' - + stages { + stage ('Initialize libraries') { + steps { + sh 'apt-get update' + sh 'git submodule update --init --remote --recursive' + sh 'git submodule update --merge' + sh './attach_modules.sh' + sh 'cd libraries; ./build.sh' + + } + } + stage ('Build TeaSpeak') { + steps { + sh './build_teaspeak.sh' + } + } + stage ('Deploy') { + steps { + sh 'cd TeaSpeak/server/repro/; chmod 400 build_private_key; ./build.sh linux/amd64' + } } } - stage ('Build TeaSpeak') { - steps { - sh './build_teaspeak.sh' - } + }, linux_x86: { + agent { + label 'linux && x84 && teaspeak' } - stage ('Deploy') { - steps { - sh 'cd TeaSpeak/server/repro/; chmod 400 build_private_key; ./build.sh linux/x84' + + environment { + /* General flags */ + CXX_FLAGS = '' + C_FLAGS = '' + + /* CMake specific flags */ + CMAKE_OPTIONS = '' + CMAKE_MAKE_OPTIONS = '' + + /* Make specific flags */ + MAKE_OPTIONS = '' + } + + + stages { + stage ('Initialize libraries') { + steps { + sh 'apt-get update' + sh 'git submodule update --init --remote --recursive' + sh 'git submodule update --merge' + sh './attach_modules.sh' + sh 'cd libraries; ./build.sh' + + } + } + stage ('Build TeaSpeak') { + steps { + sh './build_teaspeak.sh' + } + } + stage ('Deploy') { + steps { + sh 'cd TeaSpeak/server/repro/; chmod 400 build_private_key; ./build.sh linux/x84' + } } } }