commit 7a014d2c45a9deabedd1d5082ce404e7c80b188f
parent 4625763e652c977f7dbc0cd71bc2dffb1cc01d72
Author: dsp56300 <dsp56300@users.noreply.github.com>
Date: Mon, 5 Aug 2024 11:22:49 +0200
update jenkins build scripts
Diffstat:
2 files changed, 62 insertions(+), 28 deletions(-)
diff --git a/scripts/Jenkinsfile b/scripts/Jenkinsfile
@@ -3,8 +3,6 @@ pipeline {
environment {
GIT_URL = credentials('dsp56300_gitUrl')
- BUILD_JUCE = needsJuce()
- BUILD_FX_PLUGIN = buildFxPlugins()
CMAKE_BUILD_DIR = 'temp/cmake_jenkins'
}
parameters
@@ -16,6 +14,10 @@ pipeline {
booleanParam(name: 'IntegrationTests', defaultValue: true, description: '')
booleanParam(name: 'Upload', defaultValue: false, description: '')
string(name: 'UploadFolder', defaultValue: "", description: '')
+ booleanParam(name: 'SynthOsirus', defaultValue: true, description: '')
+ booleanParam(name: 'SynthOsTIrus', defaultValue: true, description: '')
+ booleanParam(name: 'SynthVavra', defaultValue: true, description: '')
+ booleanParam(name: 'SynthXenia', defaultValue: false, description: '')
}
stages {
stage("Checkout") {
@@ -23,6 +25,15 @@ pipeline {
script {
currentBuild.displayName += " - ${params.AgentLabel} - ${params.Branch}"
currentBuild.description = "Integration Tests: ${params.IntegrationTests}\nDeploy: ${params.Deploy}\nUpload: ${params.Upload}"
+
+ if(params.FXPlugins) currentBuild.displayName += " FX"
+ if(params.Deploy) currentBuild.displayName += " d"
+ if(params.IntegrationTests) currentBuild.displayName += " i"
+ if(params.Upload) currentBuild.displayName += " u"
+ if(params.SynthOsirus) currentBuild.displayName += " Sabc"
+ if(params.SynthOsTIrus) currentBuild.displayName += " Sti"
+ if(params.SynthVavra) currentBuild.displayName += " SmQ"
+ if(params.SynthXenia) currentBuild.displayName += " Sxt"
}
doCheckout()
}
@@ -115,12 +126,11 @@ def deleteFile(name)
def needsJuce()
{
- //return params.Deploy || params.Upload ? 'ON' : 'OFF'
- return true
+ return "on"
}
def buildFxPlugins()
{
- return params.FXPlugins ? 'ON' : 'OFF'
+ return params.FXPlugins ? 'on' : 'off'
}
def cmakeBuildDir()
{
@@ -144,27 +154,39 @@ def doCheckout()
)
}
+def getSynths()
+{
+ def synths =
+ "-Dgearmulator_SYNTH_OSIRUS=" + (params.SynthOsirus ? "on" : "off") +
+ " -Dgearmulator_SYNTH_OSTIRUS=" + (params.SynthOsTIrus ? "on" : "off") +
+ " -Dgearmulator_SYNTH_VAVRA=" + (params.SynthVavra ? "on" : "off") +
+ " -Dgearmulator_SYNTH_XENIA=" + (params.SynthXenia ? "on" : "off")
+
+ return synths
+}
+
def cmakeBuild()
{
- def buildDir = cmakeBuildDir();
+ def buildDir = cmakeBuildDir()
+ def synths = getSynths()
+ def juce = needsJuce()
+ def fx = buildFxPlugins()
withCredentials([file(credentialsId: 'rclone_dsp56300_conf', variable: 'RCLONE_CONF')]) {
- if(hasLabel("mac")) {
- genericSh "cmake . -G Xcode -B ${buildDir} -Dgearmulator_BUILD_JUCEPLUGIN=${BUILD_JUCE} -Dgearmulator_BUILD_FX_PLUGIN=${BUILD_FX_PLUGIN} -DCMAKE_BUILD_TYPE=Release"
- } else {
- genericSh "cmake . -B ${buildDir} -Dgearmulator_BUILD_JUCEPLUGIN=${BUILD_JUCE} -Dgearmulator_BUILD_FX_PLUGIN=${BUILD_FX_PLUGIN} -DCMAKE_BUILD_TYPE=Release"
- }
+ genericSh "cmake -Dgearmulator_SOURCE_DIR=../ -Dgearmulator_BINARY_DIR=../${buildDir} -Dgearmulator_BUILD_JUCEPLUGIN=${juce} -Dgearmulator_BUILD_FX_PLUGIN=${fx} -DCMAKE_BUILD_TYPE=Release ${synths} -P scripts/generate.cmake"
+ }
- dir(cmakeBuildDir()) {
- if(hasLabel("m2")) {
- genericSh 'cmake --build . --config Release --parallel 6'
- } else if(hasLabel("pi5")) {
- genericSh 'cmake --build . --config Release --parallel 2'
- } else {
- genericSh 'cmake --build . --config Release --parallel 2'
- }
- }
+ def parallel = 2;
+
+ if(hasLabel("win")) {
+ parallel = 12;
+ } else if(hasLabel("m2")) {
+ parallel = 6;
+ } else if(hasLabel("pi5")) {
+ paraellel = 2;
}
+
+ genericSh "cmake --build ${buildDir} --config Release --parallel ${parallel}"
}
def doIntegrationTests()
@@ -185,10 +207,11 @@ def doPack()
def copyArtefacts(local, remote)
{
+ def buildDir = cmakeBuildDir()
+ def synths = getSynths()
+
withCredentials([file(credentialsId: 'rclone_dsp56300_conf', variable: 'RCLONE_CONF')]) {
- dir(cmakeBuildDir()) {
- genericSh "cmake -DUPLOAD_LOCAL=${local} -DUPLOAD_REMOTE=${remote} -DFOLDER=${params.Branch}/${params.UploadFolder} -P ../../scripts/deploy.cmake"
- }
+ genericSh "cmake -Dgearmulator_BINARY_DIR=${buildDir} -DUPLOAD_LOCAL=${local} -DUPLOAD_REMOTE=${remote} -DFOLDER=${params.UploadFolder} ${synths} -P scripts/deployAll.cmake"
}
}
diff --git a/scripts/JenkinsfileMulti b/scripts/JenkinsfileMulti
@@ -6,12 +6,16 @@ pipeline {
booleanParam(name: 'LinuxX86', defaultValue: true, description: '')
booleanParam(name: 'Win', defaultValue: true, description: '')
booleanParam(name: 'Mac', defaultValue: true, description: '')
- choice(name: 'Branch', choices: ['osirus', 'ostirus', 'vavra'], description: '')
+ choice(name: 'Branch', choices: ['main'], description: '')
booleanParam(name: 'FXPlugins', defaultValue: true, description: '')
- booleanParam(name: 'IntegrationTests', defaultValue: false, description: '')
+ booleanParam(name: 'IntegrationTests', defaultValue: true, description: '')
booleanParam(name: 'Deploy', defaultValue: false, description: '')
booleanParam(name: 'Upload', defaultValue: false, description: '')
- choice(name: 'UploadFolder', choices: ['/internal', '', '/alpha', '/beta', '/donators', ''], description: '')
+ choice(name: 'UploadFolder', choices: ['internal', '', 'alpha', 'beta', 'donators', ''], description: '')
+ booleanParam(name: 'SynthOsirus', defaultValue: true, description: '')
+ booleanParam(name: 'SynthOsTIrus', defaultValue: true, description: '')
+ booleanParam(name: 'SynthVavra', defaultValue: true, description: '')
+ booleanParam(name: 'SynthXenia', defaultValue: true, description: '')
}
stages {
stage('Prepare') {
@@ -27,6 +31,10 @@ pipeline {
if(params.IntegrationTests) currentBuild.displayName += " i"
if(params.Deploy) currentBuild.displayName += " d"
if(params.Upload) currentBuild.displayName += " u"
+ if(params.SynthOsirus) currentBuild.displayName += " Sabc"
+ if(params.SynthOsTIrus) currentBuild.displayName += " Sti"
+ if(params.SynthVavra) currentBuild.displayName += " SmQ"
+ if(params.SynthXenia) currentBuild.displayName += " Sxt"
currentBuild.description = "Integration Tests: ${params.IntegrationTests}\nDeploy: ${params.Deploy}"
}
@@ -73,8 +81,7 @@ pipeline {
def startBuildJob(label)
{
-// build job: 'dsp56300', parameters: [[$class: 'LabelParameterValue', name: 'Agent', label: "win" ]]
- build job: 'dsp56300', parameters:
+ build job: 'dsp56300_main', parameters:
[
[$class: 'StringParameterValue', name: 'AgentLabel', value: "${label}"],
[$class: 'StringParameterValue', name: 'Branch', value: params.Branch],
@@ -83,5 +90,9 @@ def startBuildJob(label)
[$class: 'BooleanParameterValue', name: 'IntegrationTests', value: params.IntegrationTests],
[$class: 'BooleanParameterValue', name: 'FXPlugins', value: params.FXPlugins],
[$class: 'StringParameterValue', name: 'UploadFolder', value: params.UploadFolder],
+ [$class: 'BooleanParameterValue', name: 'SynthOsirus', value: params.SynthOsirus],
+ [$class: 'BooleanParameterValue', name: 'SynthOsTIrus', value: params.SynthOsTIrus],
+ [$class: 'BooleanParameterValue', name: 'SynthVavra', value: params.SynthVavra],
+ [$class: 'BooleanParameterValue', name: 'SynthXenia', value: params.SynthXenia],
]
}