From 8504eecce147671fd3334ee43a33dd1c1f708769 Mon Sep 17 00:00:00 2001 From: Murthy Date: Thu, 28 Oct 2021 18:46:30 +0530 Subject: [PATCH 01/10] Add files via upload Adding jenkins file with basic config --- Jenkinsfile | 103 ++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 103 insertions(+) create mode 100644 Jenkinsfile diff --git a/Jenkinsfile b/Jenkinsfile new file mode 100644 index 00000000..88b16ff0 --- /dev/null +++ b/Jenkinsfile @@ -0,0 +1,103 @@ +@Library('apim-jenkins-lib@master') _ + +pipeline { + agent { label 'ng2AgentStable' } + parameters { + choice(name: 'PUBLISH', choices: ['yes', 'no'], description: 'whether to publish artifact') + string(name: 'PUBLISH_FILER_LOCATION', defaultValue: '/mnt/../../../../../../Volumes/wip/mag/MobileSDK-Release-Binaries/Android/', description: 'Filer location to publish the artifacts') + string(name: 'env.zip_name', defaultValue: 'MobileSDK', description: 'zip folder name') + string(name: 'env.module', defaultValue: 'all', description: 'all') + string(name: 'env.BUILD_PATH', defaultValue: '/Users/qa/Documents/iOSRepos/buildScript', description: 'path') + string(name: 'env.ANDROID_HOME', defaultValue: '/Users/qa/Library/Android/sdk', description: 'path') + string(name: 'sdk_version', defaultValue: '2.2.00', description: 'Configuration parameter') + } + environment { + JAVA_HOME = '/usr/java/jdk1.8.0_275' + PUBLISH_FILER_LOCATION = "${PUBLISH_FILER_LOCATION}" + } + stages { + //Clean Filer3 Folder and the local foler + stage('FolderClean') { + steps { + script { + withCredentials([usernamePassword(credentialsId: 'ARTIFACTORY_GW_APIKEY', passwordVariable: 'APIKEY', usernameVariable: 'USERNAME')]) { + //Delete and Re-create local SDK folder + sh "rm -rf %env.zip_name%" + sh "sudo mkdir %env.zip_name%" + + //Clear MobileSDK-Release-Binaries folder on filer4 + sh "cd ../../../../../../Volumes/wip/mag/MobileSDK-Release-Binaries/Android/[ -d %sdk_version% ] && echo "Directory Exists" || mkdir %sdk_version%" + sh "cd %sdk_version%/" + sh "rm -rf *" + } + } + } + } + stages { + //Build Android SDK - Gradle and copy to MobileSDK folder + stage('Build Android SDK - Gradle') { + steps { + script { + withCredentials([usernamePassword(credentialsId: 'ARTIFACTORY_GW_APIKEY', passwordVariable: 'APIKEY', usernameVariable: 'USERNAME')]) { + sh "cd Android/Android-MAS-SDK" + sh "git branch" + sh "cat /dev/null > settings.gradle" + sh "printf \"include ':mas', ':masui', ':mas-connecta', ':mas-storage', ':mas-foundation', ':mas-test'\" > settings.gradle" + sh "./gradlew build" + //# Copy binaries to local folder MobileSDK + sh "cp mas-foundation/build/outputs/aar/mas-foundation-release.aar ../../%env.zip_name%/mas-foundation-%sdk_version%.aar" + sh "cp mas-connecta/build/outputs/aar/mas-connecta-release.aar ../../%env.zip_name%/mas-connecta-%sdk_version%.aar" + sh "cp mas-storage/build/outputs/aar/mas-storage-release.aar ../../%env.zip_name%/mas-storage-%sdk_version%.aar" + sh "cp masui/build/outputs/aar/masui-release.aar ../../%env.zip_name%/masui-%sdk_version%.aar" + //Zip and Copy javadoc to folder MobileSDK + sh "cd docs" + sh "zip -r mas_foundation_javadoc.zip mas_foundation_javadoc/" + sh "zip -r mas_storage_javadoc.zip mas_storage_javadoc/" + sh "zip -r mas_connecta_javadoc.zip mas_connecta_javadoc/" + + sh "sudo cp *.zip ../../../%env.zip_name%/" + + } + } + } + } + stage('Publish') { + when { + expression { params.PUBLISH == 'yes' } + } + steps { + dir("build/libs") { + script { + //Copy all the SDK binaries to filer3 + sh "sudo cp -R %env.zip_name%/* ../../../../../../Volumes/wip/mag/MobileSDK-Release-Binaries/Android/%sdk_version%/" + } + } + archiveArtifacts 'build/libs/*.*' + archiveArtifacts 'build/test-results/test/*.*' + } + } + } + post { + success { + script { + // 15. send commit status to repo when the build is a pull request + if (env.CHANGE_ID) { + pullRequest.createStatus(status: 'success', + context: 'continuous-integration/jenkins/pr-merge', + description: 'Build Success', + targetUrl: "${env.JOB_URL}/testResults") + } + } + } + failure { + script { + if (env.CHANGE_ID) { + pullRequest.createStatus(status: 'failure', + context: 'continuous-integration/jenkins/pr-merge', + description: 'Build Failed', + targetUrl: "${env.JOB_URL}/testResults") + } + } + } + } +} \ No newline at end of file From 2042916a8d53f062545f8b30df8cc45605a9bf89 Mon Sep 17 00:00:00 2001 From: Murthy Date: Fri, 29 Oct 2021 09:31:13 +0530 Subject: [PATCH 02/10] Update Jenkinsfile --- Jenkinsfile | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/Jenkinsfile b/Jenkinsfile index 88b16ff0..d3b252a5 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -40,7 +40,6 @@ pipeline { script { withCredentials([usernamePassword(credentialsId: 'ARTIFACTORY_GW_APIKEY', passwordVariable: 'APIKEY', usernameVariable: 'USERNAME')]) { sh "cd Android/Android-MAS-SDK" - sh "git branch" sh "cat /dev/null > settings.gradle" sh "printf \"include ':mas', ':masui', ':mas-connecta', ':mas-storage', ':mas-foundation', ':mas-test'\" > settings.gradle" sh "./gradlew build" @@ -100,4 +99,4 @@ pipeline { } } } -} \ No newline at end of file +} From 4a9e0f9525f7b03a1666bd5038a61ddfbd030c3e Mon Sep 17 00:00:00 2001 From: Murthy Date: Fri, 29 Oct 2021 09:32:34 +0530 Subject: [PATCH 03/10] Update Jenkinsfile --- Jenkinsfile | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/Jenkinsfile b/Jenkinsfile index d3b252a5..6af820cd 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -22,12 +22,12 @@ pipeline { script { withCredentials([usernamePassword(credentialsId: 'ARTIFACTORY_GW_APIKEY', passwordVariable: 'APIKEY', usernameVariable: 'USERNAME')]) { //Delete and Re-create local SDK folder - sh "rm -rf %env.zip_name%" - sh "sudo mkdir %env.zip_name%" + sh "rm -rf ${env.zip_name}" + sh "sudo mkdir ${env.zip_name}" //Clear MobileSDK-Release-Binaries folder on filer4 - sh "cd ../../../../../../Volumes/wip/mag/MobileSDK-Release-Binaries/Android/[ -d %sdk_version% ] && echo "Directory Exists" || mkdir %sdk_version%" - sh "cd %sdk_version%/" + sh "cd ../../../../../../Volumes/wip/mag/MobileSDK-Release-Binaries/Android/[ -d ${sdk_version} ] && echo "Directory Exists" || mkdir ${sdk_version}" + sh "cd ${sdk_version}/" sh "rm -rf *" } } @@ -44,17 +44,17 @@ pipeline { sh "printf \"include ':mas', ':masui', ':mas-connecta', ':mas-storage', ':mas-foundation', ':mas-test'\" > settings.gradle" sh "./gradlew build" //# Copy binaries to local folder MobileSDK - sh "cp mas-foundation/build/outputs/aar/mas-foundation-release.aar ../../%env.zip_name%/mas-foundation-%sdk_version%.aar" - sh "cp mas-connecta/build/outputs/aar/mas-connecta-release.aar ../../%env.zip_name%/mas-connecta-%sdk_version%.aar" - sh "cp mas-storage/build/outputs/aar/mas-storage-release.aar ../../%env.zip_name%/mas-storage-%sdk_version%.aar" - sh "cp masui/build/outputs/aar/masui-release.aar ../../%env.zip_name%/masui-%sdk_version%.aar" + sh "cp mas-foundation/build/outputs/aar/mas-foundation-release.aar ../../${env.zip_name}/mas-foundation-${sdk_version}.aar" + sh "cp mas-connecta/build/outputs/aar/mas-connecta-release.aar ../../${env.zip_name}/mas-connecta-${sdk_version}.aar" + sh "cp mas-storage/build/outputs/aar/mas-storage-release.aar ../../${env.zip_name}/mas-storage-${sdk_version}.aar" + sh "cp masui/build/outputs/aar/masui-release.aar ../../${env.zip_name}/masui-${sdk_version}.aar" //Zip and Copy javadoc to folder MobileSDK sh "cd docs" sh "zip -r mas_foundation_javadoc.zip mas_foundation_javadoc/" sh "zip -r mas_storage_javadoc.zip mas_storage_javadoc/" sh "zip -r mas_connecta_javadoc.zip mas_connecta_javadoc/" - sh "sudo cp *.zip ../../../%env.zip_name%/" + sh "sudo cp *.zip ../../../${env.zip_name}/" } } @@ -67,8 +67,8 @@ pipeline { steps { dir("build/libs") { script { - //Copy all the SDK binaries to filer3 - sh "sudo cp -R %env.zip_name%/* ../../../../../../Volumes/wip/mag/MobileSDK-Release-Binaries/Android/%sdk_version%/" + //Copy all the SDK binaries to filer4 + sh "sudo cp -R ${env.zip_name}/* ../../../../../../Volumes/wip/mag/MobileSDK-Release-Binaries/Android/${sdk_version}/" } } archiveArtifacts 'build/libs/*.*' From 9068c0cd43318c5c8fcc5767b0820de9e99f4c8c Mon Sep 17 00:00:00 2001 From: Murthy Date: Fri, 29 Oct 2021 09:34:07 +0530 Subject: [PATCH 04/10] removing % and adding $ removing % and adding $ From 1f952351ffb0e82bc8baab63226af062aba7c59e Mon Sep 17 00:00:00 2001 From: Murthy Date: Fri, 29 Oct 2021 14:15:40 +0530 Subject: [PATCH 05/10] Rename Jenkinsfile to Jenkinsfile_mobilesdk changing file name --- Jenkinsfile => Jenkinsfile_mobilesdk | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename Jenkinsfile => Jenkinsfile_mobilesdk (100%) diff --git a/Jenkinsfile b/Jenkinsfile_mobilesdk similarity index 100% rename from Jenkinsfile rename to Jenkinsfile_mobilesdk From eadd10ff99cd27880113217cb925ba4a654c08f5 Mon Sep 17 00:00:00 2001 From: Murthy Date: Fri, 29 Oct 2021 14:25:10 +0530 Subject: [PATCH 06/10] Update Jenkinsfile_mobilesdk updating jenkins file --- Jenkinsfile_mobilesdk | 1 + 1 file changed, 1 insertion(+) diff --git a/Jenkinsfile_mobilesdk b/Jenkinsfile_mobilesdk index 6af820cd..4bd21da3 100644 --- a/Jenkinsfile_mobilesdk +++ b/Jenkinsfile_mobilesdk @@ -99,4 +99,5 @@ pipeline { } } } + } } From 209463c0fc5d3c94707abf1a016d163e6398018b Mon Sep 17 00:00:00 2001 From: Murthy Date: Fri, 29 Oct 2021 14:53:05 +0530 Subject: [PATCH 07/10] Update Jenkinsfile_mobilesdk updating jenkins code --- Jenkinsfile_mobilesdk | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/Jenkinsfile_mobilesdk b/Jenkinsfile_mobilesdk index 4bd21da3..305b9db7 100644 --- a/Jenkinsfile_mobilesdk +++ b/Jenkinsfile_mobilesdk @@ -33,11 +33,11 @@ pipeline { } } } - stages { + stage { //Build Android SDK - Gradle and copy to MobileSDK folder - stage('Build Android SDK - Gradle') { - steps { - script { + stage('Build Android SDK - Gradle') { + steps { + script { withCredentials([usernamePassword(credentialsId: 'ARTIFACTORY_GW_APIKEY', passwordVariable: 'APIKEY', usernameVariable: 'USERNAME')]) { sh "cd Android/Android-MAS-SDK" sh "cat /dev/null > settings.gradle" @@ -55,7 +55,7 @@ pipeline { sh "zip -r mas_connecta_javadoc.zip mas_connecta_javadoc/" sh "sudo cp *.zip ../../../${env.zip_name}/" - + } } } } @@ -99,5 +99,4 @@ pipeline { } } } - } } From c1eb31e1442b5d48f7fc2b66b4a7bcb827eb8355 Mon Sep 17 00:00:00 2001 From: Murthy Date: Fri, 29 Oct 2021 15:18:54 +0530 Subject: [PATCH 08/10] Update Jenkinsfile_mobilesdk update jenkinsa file --- Jenkinsfile_mobilesdk | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/Jenkinsfile_mobilesdk b/Jenkinsfile_mobilesdk index 305b9db7..8b24dfaf 100644 --- a/Jenkinsfile_mobilesdk +++ b/Jenkinsfile_mobilesdk @@ -33,11 +33,10 @@ pipeline { } } } - stage { //Build Android SDK - Gradle and copy to MobileSDK folder - stage('Build Android SDK - Gradle') { - steps { - script { + stage('Build Android SDK - Gradle') { + steps { + script { withCredentials([usernamePassword(credentialsId: 'ARTIFACTORY_GW_APIKEY', passwordVariable: 'APIKEY', usernameVariable: 'USERNAME')]) { sh "cd Android/Android-MAS-SDK" sh "cat /dev/null > settings.gradle" @@ -55,8 +54,7 @@ pipeline { sh "zip -r mas_connecta_javadoc.zip mas_connecta_javadoc/" sh "sudo cp *.zip ../../../${env.zip_name}/" - } - } + } } } } From 832d39736ffce1cb149c927f1cc7cc9afd3b43a3 Mon Sep 17 00:00:00 2001 From: Murthy Date: Fri, 29 Oct 2021 15:48:01 +0530 Subject: [PATCH 09/10] Update Jenkinsfile_mobilesdk adding new env variables --- Jenkinsfile_mobilesdk | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/Jenkinsfile_mobilesdk b/Jenkinsfile_mobilesdk index 8b24dfaf..573850af 100644 --- a/Jenkinsfile_mobilesdk +++ b/Jenkinsfile_mobilesdk @@ -14,6 +14,11 @@ pipeline { environment { JAVA_HOME = '/usr/java/jdk1.8.0_275' PUBLISH_FILER_LOCATION = "${PUBLISH_FILER_LOCATION}" + env.zip_name = "${env.zip_name}" + env.module = "${env.module}" + env.BUILD_PATH = "${env.BUILD_PATH}" + env.ANDROID_HOME = "${env.ANDROID_HOME}" + sdk_version = "${sdk_version}" } stages { //Clean Filer3 Folder and the local foler From e028ccc56a64fe1d066d1e55123125f284de1b55 Mon Sep 17 00:00:00 2001 From: Murthy Date: Fri, 29 Oct 2021 16:01:37 +0530 Subject: [PATCH 10/10] Update Jenkinsfile_mobilesdk updating the code --- Jenkinsfile_mobilesdk | 5 ----- 1 file changed, 5 deletions(-) diff --git a/Jenkinsfile_mobilesdk b/Jenkinsfile_mobilesdk index 573850af..8b24dfaf 100644 --- a/Jenkinsfile_mobilesdk +++ b/Jenkinsfile_mobilesdk @@ -14,11 +14,6 @@ pipeline { environment { JAVA_HOME = '/usr/java/jdk1.8.0_275' PUBLISH_FILER_LOCATION = "${PUBLISH_FILER_LOCATION}" - env.zip_name = "${env.zip_name}" - env.module = "${env.module}" - env.BUILD_PATH = "${env.BUILD_PATH}" - env.ANDROID_HOME = "${env.ANDROID_HOME}" - sdk_version = "${sdk_version}" } stages { //Clean Filer3 Folder and the local foler