From bde41d21be4edcc68a47735a60518eb2dda09f4e Mon Sep 17 00:00:00 2001 From: GiuseppeS Date: Wed, 28 May 2025 11:26:12 +0200 Subject: [PATCH 1/3] Modificato Jenkinsfile --- Jenkinsfile.groovy | 59 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 59 insertions(+) create mode 100644 Jenkinsfile.groovy diff --git a/Jenkinsfile.groovy b/Jenkinsfile.groovy new file mode 100644 index 00000000..1c180ff2 --- /dev/null +++ b/Jenkinsfile.groovy @@ -0,0 +1,59 @@ +pipeline { + agent { + label 'master' + } + + options { + buildDiscarder(logRotator(numToKeepStr: '30', artifactNumToKeepStr: '10')) + disableConcurrentBuilds() + } + + environment { + // ANDROID_HOME = "/usr/local/android/sdk" // Cambia in base al tuo sistema + JAVA_HOME = tool 'JDK 17.0.6 x64' // Nome dello strumento configurato in Jenkins + PATH = "${env.JAVA_HOME}/bin:${env.PATH}" + } + + stages { + + stage('Build') { + steps { + bat "./gradlew assembleRelease" + archiveArtifacts artifacts: 'app/build/outputs/apk/release/', onlyIfSuccessful: true + } + } + + stage('Publish') { + steps { + azureUpload allowAnonymousAccess: true, fileShareName: 'storage-ci', filesPath: 'app/build/outputs/apk/release/*', removePrefixPath: 'app/build/outputs/apk/release/', storageCredentialId: '83a86793-c1d6-4776-b20f-1ff652a57fee', storageType: 'filestorage', uploadArtifactsOnlyIfSuccessful: true, verbose: true, virtualPath: 'wms' + } + } + } + + post { + success { + script { + bat "curl -k https://devservices.studioml.it/ems-api/updateWMSApp" + bat "curl -k https://services.studioml.it/ems-api/updateWMSApp" + if (env.GIT_BRANCH == "master" || env.GIT_BRANCH == "develop") { + office365ConnectorSend adaptiveCards: true, color: '#008000', message: 'WMS è stato compilato con successo', status: 'SUCCESS', webhookUrl: 'https://prod-89.westeurope.logic.azure.com:443/workflows/260580715a9d4447a54dea861a865536/triggers/manual/paths/invoke?api-version=2016-06-01&sp=%2Ftriggers%2Fmanual%2Frun&sv=1.0&sig=EMqPHohvE5o5IGj_gir_iQaAufR4r8ZJxlFx52jklSE' + } + } + } + unstable { + script { + if (env.GIT_BRANCH == "master" || env.GIT_BRANCH == "develop") { + office365ConnectorSend adaptiveCards: true, color: '#FFDE21', message: 'WMS è INSTABILE', status: 'UNSTABLE', webhookUrl: 'https://prod-89.westeurope.logic.azure.com:443/workflows/260580715a9d4447a54dea861a865536/triggers/manual/paths/invoke?api-version=2016-06-01&sp=%2Ftriggers%2Fmanual%2Frun&sv=1.0&sig=EMqPHohvE5o5IGj_gir_iQaAufR4r8ZJxlFx52jklSE' + } + } + } + failure { + script { + if (env.GIT_BRANCH == "master" || env.GIT_BRANCH == "develop") { + office365ConnectorSend adaptiveCards: true, color: '#FF2C2C', message: 'Errore di compilazione su WMS', status: 'FAILURE', webhookUrl: 'https://prod-89.westeurope.logic.azure.com:443/workflows/260580715a9d4447a54dea861a865536/triggers/manual/paths/invoke?api-version=2016-06-01&sp=%2Ftriggers%2Fmanual%2Frun&sv=1.0&sig=EMqPHohvE5o5IGj_gir_iQaAufR4r8ZJxlFx52jklSE' + } + } + } + } + +} \ No newline at end of file From 22ad23c5b7aba820f30491c4cae44cdc4cc4f15f Mon Sep 17 00:00:00 2001 From: GiuseppeS Date: Wed, 28 May 2025 11:44:41 +0200 Subject: [PATCH 2/3] Aggiornato build.gradle --- Jenkinsfile.groovy | 33 ++++++++++++++++++++++++++++++--- 1 file changed, 30 insertions(+), 3 deletions(-) diff --git a/Jenkinsfile.groovy b/Jenkinsfile.groovy index 1c180ff2..f6f2a77c 100644 --- a/Jenkinsfile.groovy +++ b/Jenkinsfile.groovy @@ -16,6 +16,33 @@ pipeline { stages { + stage('Preparing') { + when(expression: { env.GIT_BRANCH == 'master-beta' }) + steps { + powershell """ + # Percorso del file build.gradle + $gradleFile = "app\\build.gradle" + + # Legge il contenuto del file + $content = Get-Content $gradleFile -Raw + + # Modifica appVersionName aggiungendo '-beta' + $content = $content -replace "(appVersionName\\s*=\\s*')([^']+)'", "`\$1`\$2-beta'" + + # Modifica il nome del file di output aggiungendo '-beta' prima dell'estensione .apk + $content = $content -replace '(output\\.outputFileName\\s*=\\s*")([^"]+)(\\.apk")', "`\$1`\$2-beta`\$3" + + # Modifica il percorso di version.txt in version-beta.txt + $content = $content -replace '("\\$projectDir/build/outputs/apk/release/version)(\\.txt")', '\$1-beta\$2' + + # Sovrascrive il file con le modifiche + Set-Content $gradleFile -Value $content + + Write-Host "Versione aggiornata con '-beta' in appVersionName, outputFileName e percorso di version.txt" + """ + } + } + stage('Build') { steps { bat "./gradlew assembleRelease" @@ -35,21 +62,21 @@ pipeline { script { bat "curl -k https://devservices.studioml.it/ems-api/updateWMSApp" bat "curl -k https://services.studioml.it/ems-api/updateWMSApp" - if (env.GIT_BRANCH == "master" || env.GIT_BRANCH == "develop") { + if (env.GIT_BRANCH == "master") { office365ConnectorSend adaptiveCards: true, color: '#008000', message: 'WMS è stato compilato con successo', status: 'SUCCESS', webhookUrl: 'https://prod-89.westeurope.logic.azure.com:443/workflows/260580715a9d4447a54dea861a865536/triggers/manual/paths/invoke?api-version=2016-06-01&sp=%2Ftriggers%2Fmanual%2Frun&sv=1.0&sig=EMqPHohvE5o5IGj_gir_iQaAufR4r8ZJxlFx52jklSE' } } } unstable { script { - if (env.GIT_BRANCH == "master" || env.GIT_BRANCH == "develop") { + if (env.GIT_BRANCH == "master") { office365ConnectorSend adaptiveCards: true, color: '#FFDE21', message: 'WMS è INSTABILE', status: 'UNSTABLE', webhookUrl: 'https://prod-89.westeurope.logic.azure.com:443/workflows/260580715a9d4447a54dea861a865536/triggers/manual/paths/invoke?api-version=2016-06-01&sp=%2Ftriggers%2Fmanual%2Frun&sv=1.0&sig=EMqPHohvE5o5IGj_gir_iQaAufR4r8ZJxlFx52jklSE' } } } failure { script { - if (env.GIT_BRANCH == "master" || env.GIT_BRANCH == "develop") { + if (env.GIT_BRANCH == "master") { office365ConnectorSend adaptiveCards: true, color: '#FF2C2C', message: 'Errore di compilazione su WMS', status: 'FAILURE', webhookUrl: 'https://prod-89.westeurope.logic.azure.com:443/workflows/260580715a9d4447a54dea861a865536/triggers/manual/paths/invoke?api-version=2016-06-01&sp=%2Ftriggers%2Fmanual%2Frun&sv=1.0&sig=EMqPHohvE5o5IGj_gir_iQaAufR4r8ZJxlFx52jklSE' } } From a5d3388665a49fdc261198e6c8d7db5f93ec074e Mon Sep 17 00:00:00 2001 From: GiuseppeS Date: Wed, 28 May 2025 11:45:51 +0200 Subject: [PATCH 3/3] Aggiornato build.gradle --- Jenkinsfile.groovy | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/Jenkinsfile.groovy b/Jenkinsfile.groovy index f6f2a77c..b05f41e4 100644 --- a/Jenkinsfile.groovy +++ b/Jenkinsfile.groovy @@ -17,7 +17,11 @@ pipeline { stages { stage('Preparing') { - when(expression: { env.GIT_BRANCH == 'master-beta' }) + when { + expression { + return env.GIT_BRANCH == "master-beta" + } + } steps { powershell """ # Percorso del file build.gradle