Enable triggerring buildlogs even for prerelease projects. 16/92416/1
authorJunghyun Kim <jh0822.kim@samsung.com>
Mon, 17 Oct 2016 02:39:25 +0000 (11:39 +0900)
committerJunghyun Kim <jh0822.kim@samsung.com>
Mon, 17 Oct 2016 02:39:25 +0000 (11:39 +0900)
Currently, creating a snapshot for prerelease projects (job_pre_release_obs.py)
does not trigger buildlogs unlike that for the main projects (job_create_snapshot.py).

To make a dependencey graph for prerelease projects, it is necessary to
include buildlogs job.

Change-Id: Iea5e1181a32e09efc8881aee02d8103b3587dca8
Signed-off-by: Junghyun Kim <jh0822.kim@samsung.com>
job_pre_release_obs.py

index 88c4b60..6ea337e 100755 (executable)
@@ -134,6 +134,9 @@ def make_repo(project, repo, backenddb, base_url, base_path,
     # Make build id from latest snapshot + project suffix
     target_project, tstamp = get_info_from_prerelease_name(project)
 
+    repos = {}
+    imagedatas = {}
+
     try:
         snapshot = Snapshot(backenddb, base_path, obs_project=target_project)
     except SnapshotError, err:
@@ -159,6 +162,9 @@ def make_repo(project, repo, backenddb, base_url, base_path,
         except RepoMakerError, err:
             raise LocalError("Unable to create download repo: %s" % err)
 
+        repos.update(repomaker.repos)
+        imagedatas[repo['Name']] = repomaker.imagedata
+
         # Assuming that there can be just one image-configurations-
         # rpm in the repo
         if not repomaker.has_images():
@@ -202,6 +208,11 @@ def make_repo(project, repo, backenddb, base_url, base_path,
                                                     prerelease.build_id)},
                        project)
 
+    return {'project': project,
+            'repo' : repos,
+            'repo_path': os.path.join(prerelease.dir, prerelease.build_id),
+            'build_id': prerelease.build_id,
+            'imagedata': imagedatas}
 
 
 def get_published_repos(repo_path_base, time_stamp):
@@ -315,8 +326,15 @@ def main(action):
         # we don't used src.rpm files on prerelease project.
         project_src_rpm_cleanup(live_repo_base,project)
 
-        make_repo(project, repo, backenddb, base_url, base_path,
+        repo_data = make_repo(project, repo, backenddb, base_url, base_path,
                    live_repo_base, build)
+
+        # trigger post snapshot creation job with repo data
+        data = repo_data.copy()
+        # remove unused item
+        data.pop('imagedata')
+
+        trigger_next("post-snapshot", data)
     elif action == 'cleanup':
         # request(SR) end of life, this founction should be called to
         # delete the prerelease project "