For Tizen:Unified, only when gbs-ref-fullbuild job succeeded, update-gbs-meta job... 03/149803/1
authorSoonKyu Park <sk7.park@samsung.com>
Wed, 13 Sep 2017 06:27:37 +0000 (15:27 +0900)
committerSoonKyu Park <sk7.park@samsung.com>
Wed, 13 Sep 2017 06:27:37 +0000 (15:27 +0900)
Jenkins job process:
1. scm/git-ref-mapping update
2-1. Tizen:Unified : gbs fullbuild -> Trigger update-gbs-meta and Build-monitor when there is no problem in gbs-ref-fullbuild
2-2. Other profile : Direct trigger update-gbs-meta

Change-Id: Ic158a4ed58f35a0f10340a4b9cd866e947c47a05

job_gbs_ref_fullbuild.py
job_update_gbs_meta.py [changed mode: 0644->0755]

index ef0c526..490a9fe 100755 (executable)
@@ -12,6 +12,7 @@ import re
 from common.git import Git, clone_gitproject
 from common.gerrit import Gerrit, get_gerrit_event, GerritError, is_ref_deleted
 from common.buildservice import BuildService
+from common.buildtrigger import trigger_next
 
 # prepare related global variables
 workspace = os.getenv('WORKSPACE')
@@ -22,7 +23,7 @@ TIZEN_PROFILE = os.getenv('TIZEN_PROFILE')
 REPOSITORY = os.getenv('REPOSITORY')
 ARCHITECTURE = os.getenv('ARCHITECTURE')
 #gbs_ref_fullbuild_root = workspace
-gbs_ref_fullbuild_root = os.getenv('HOME') + '/gbsfullbuild-ROOT/'
+gbs_ref_fullbuild_root = '/data/gbsfullbuild-ROOT/'
 BUILD_ROOT = gbs_ref_fullbuild_root + '/GBS-ROOT/'
 SRC_ROOT = gbs_ref_fullbuild_root + '/SRC-ROOT/'
 gbs_default_build_arg='timeout 6h gbs build --threads=16 --define "jobs 8" --define "_smp_mflags -j8" --baselibs --clean-once'
@@ -203,13 +204,13 @@ def _do_repo_arch_gbs_fullbuild(repo,arch):
 
     if __is_gbs_fullbuild_result_fail(repo,arch):
         # TRIGGER NEXT BUILD-MONITOR
-        if False:
-            update_message="Successed:B(X)I(-)"
-            if len(update_message) < 119:
-                trigger_next("BUILD-MONITOR", \
-                        {'bm_stage':'GBSFULLBUILD_SNAPSHOT',
-                         'snapshot_name':ref_profile['ref_snapshot_build_id'],
-                         'gbsfullbuild_string': update_message})
+        update_message="GBS Fullbuild Failed"
+        if len(update_message) < 119:
+            trigger_next("BUILD-MONITOR", \
+                    {'bm_stage':'GBSFULLBUILD_SNAPSHOT',
+                     'snapshot_name':ref_profile['ref_snapshot_build_id'],
+                     'gbsfullbuild_string': update_message})
+
         raise LocalError('There are errors on GBS fullbuild for repo:%s, arch:%s' %(repo,arch))
 
 
@@ -283,13 +284,13 @@ def _do_mic_build(ks_path):
     ret = subprocess.call(cmd, stdout=sys.stdout,stderr=sys.stderr, shell=True)
     if ret:
         # TRIGGER NEXT BUILD-MONITOR
-        if False:
-            update_message="Successed:B(O)I(X)"
-            if len(update_message) < 119:
-                trigger_next("BUILD-MONITOR", \
-                        {'bm_stage':'GBSFULLBUILD_SNAPSHOT',
-                         'snapshot_name':ref_profile['ref_snapshot_build_id'],
-                         'gbsfullbuild_string': update_message})
+        update_message="Image Creation Failed"
+        if len(update_message) < 119:
+            trigger_next("BUILD-MONITOR", \
+                    {'bm_stage':'GBSFULLBUILD_SNAPSHOT',
+                     'snapshot_name':ref_profile['ref_snapshot_build_id'],
+                     'gbsfullbuild_string': update_message})
+
         raise LocalError('Image creation error for ks:%s' %ks_path)
 
 
@@ -373,19 +374,22 @@ def main():
     print 'commit message is %s' %commit_msg
     if commit_msg.find(ref_profile['profile']) == -1 or commit_msg.find(ref_profile['t_ver']) == -1:
         print "skip fullbuild...\nGBS reference fullbuild is triggered only for %s" %TIZEN_PROFILE
+        trigger_next("update-gbs-meta",event)
         return 0
 
     do_gbs_build()
     do_image_creation()
 
     # TRIGGER NEXT BUILD-MONITOR
-    if False:
-        update_message="Successed:B(O)I(O)"
-        if len(update_message) < 119:
-            trigger_next("BUILD-MONITOR", \
-                    {'bm_stage':'GBSFULLBUILD_SNAPSHOT',
-                     'snapshot_name':ref_profile['ref_snapshot_build_id'],
-                     'gbsfullbuild_string': update_message})
+    update_message="Succeeded"
+    if len(update_message) < 119:
+        trigger_next("BUILD-MONITOR", \
+                {'bm_stage':'GBSFULLBUILD_SNAPSHOT',
+                 'snapshot_name':ref_profile['ref_snapshot_build_id'],
+                 'gbsfullbuild_string': update_message})
+
+    trigger_next("update-gbs-meta",event)
+
 
 if __name__ == '__main__':
     sys.exit(main())
old mode 100644 (file)
new mode 100755 (executable)
index b3dd242..f165b3c
@@ -9,10 +9,11 @@ import urllib2
 import gzip
 from common.git import Git, clone_gitproject
 from common.gerrit import Gerrit, get_gerrit_event, GerritError, is_ref_deleted
+from common.buildtrigger import trigger_info
 
 # prepare related global variables
 workspace = os.getenv('WORKSPACE')
-basic_url= os.getenv('URL_PUBLIC_REPO_BASE') + '/snapshot/tizen/'
+basic_url= os.getenv('URL_PUBLIC_REPO_BASE') + '/snapshots/tizen/'
 gbs_meta_default_profile = os.getenv('GBS_META_DEFAULT_PROFILE')
 gbs_meta_support_tizen_ver = os.getenv('GBS_META_SUPPORT_TIZEN_VER')
 
@@ -269,13 +270,14 @@ def _update_gbs_conf(ref_list,base_prj_list,commit_msg):
     for ref_profile in ref_list:
         profile = ref_profile['profile']
         t_ver = ref_profile['t_ver']
+        ref_snapshot_url = ref_profile['ref_snapshot_url']
 
         gbs_conf_text += '\n############# '+ t_ver+profile+' #############\n'
         for repository in ref_profile['repository']:
             gbs_conf_text += '[repo.'+t_ver+profile+'_'+repository+']\n'
-            gbs_conf_text += 'url = '+basic_url+t_ver+profile+'/latest/repos/'+repository+'/packages/\n'
+            gbs_conf_text += 'url = '+ref_snapshot_url+'repos/'+repository+'/packages/\n'
             gbs_conf_text += '[repo.'+t_ver+profile+'_'+repository+'_debug]\n'
-            gbs_conf_text += 'url = '+basic_url+t_ver+profile+'/latest/repos/'+repository+'/debug/\n\n'
+            gbs_conf_text += 'url = '+ref_snapshot_url+'repos/'+repository+'/debug/\n\n'
     
     #write gbs_conf_text to default gbs_conf_file, which is scm/meta/gbs-config/gbs.conf
     print '==================================================\n=========== default gbs.conf file==========\n==================================================\n'
@@ -406,7 +408,9 @@ def main():
 
     print '---[JOB STARTED]----------------------------------------'
 
-    event = get_gerrit_event()
+    #comment out because this job is triggered by gbs-ref-fullbuild
+#    event = get_gerrit_event()
+    event = trigger_info(os.getenv("TRIGGER_INFO"))
 
     # prepare separate temp directory for each build
 
@@ -458,4 +462,3 @@ def main():
     
 if __name__ == '__main__':
     sys.exit(main())
-