bs
Change-Id: Ifec3ae8905369c876e6a03bee4bcb83dd7b21e8f
diff --git a/Jenkinsfile b/Jenkinsfile
index e892ba8..6399482 100644
--- a/Jenkinsfile
+++ b/Jenkinsfile
@@ -1,11 +1,50 @@
-node ('host-master') {
- def metadata = input id: 'release-build', message: 'Should I perform a release?', parameters: [booleanParam(defaultValue: true, description: 'Build and release onos applications', name: 'build_onos_apps'), string(defaultValue: '', description: '', name: 'release_version')], submitter: 'ash'
+import groovy.json.JsonSlurperClassic
- println metadata['release_version']
- println metadata['build_onos_apps']
-
- echo env.BRANCH_NAME
+env.IGNORE_LIST = ["All-Users"]
- httpRequest consoleLogResponseBody: true, url: 'https://gerrit.opencord.org/projects/?type=CODE&b=env.BRANCH_NAME', validResponseCodes: '200'
+@NonCPS
+def jsonParseList(def json) {
+ j = json.minus(")]}'")
+ resp = new groovy.json.JsonSlurperClassic().parseText(j)
+ list = []
+ for (i in resp.keySet()) {
+ list << i
+ }
+ return list
}
+@NonCPS
+def jsonParseMap(def json) {
+ def j = json.minus(")]}'")
+ return new groovy.json.JsonSlurperClassic().parseText(j)
+}
+
+def createBranch(def proj, def branch) {
+ cmd = 'ssh -p 29418 gerrit.opencord.org gerrit create-branch ' + proj + " " + branch + " master"
+ sh returnStdout: true, script: cmd
+}
+
+def checkBranchExists(def proj) {
+ println proj
+ if (env.IGNORE_LIST.contains(proj)) {
+ return
+ }
+ url = 'https://gerrit.opencord.org/projects/' + proj + '/branches/' + env.BRANCH_NAME
+ response = httpRequest url: url, validResponseCodes: '200,404'
+ if (response.status == 404) {
+ createBranch(proj, env.BRANCH_NAME)
+ }
+}
+
+node ('master') {
+ //def metadata = input id: 'release-build', message: 'Should I perform a release?', parameters: [booleanParam(defaultValue: true, description: 'Build and release onos applications', name: 'build_onos_apps'), string(defaultValue: '', description: '', name: 'release_version')], submitter: 'ash'
+
+ //println metadata['release_version']
+ //println metadata['build_onos_apps']
+ def url = 'https://gerrit.opencord.org/projects/?type=CODE'
+ def response = httpRequest url: url, validResponseCodes: '200'
+ def info = jsonParseList(response.content)
+ for (index = 0; index < info.size(); index++) {
+ checkBranchExists(info[index])
+ }
+}