From: Junghyun Kim Date: Mon, 21 Nov 2016 02:52:30 +0000 (+0900) Subject: Now supports the action "build_progress". X-Git-Tag: submit/trunk/20190927.012743~574^2~17^2 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=refs%2Fchanges%2F20%2F98820%2F2;p=services%2Fjenkins-scripts.git Now supports the action "build_progress". "HOME" is changed to "WORKSPACE" Change-Id: I3963d57fa5e736b5a6d33ebca1bffab0a0dd019d Signed-off-by: Junghyun Kim --- diff --git a/job_make_dep_graph.py b/job_make_dep_graph.py index 905cff1..962edbc 100644 --- a/job_make_dep_graph.py +++ b/job_make_dep_graph.py @@ -35,7 +35,77 @@ class LocalError(Exception): """Local error exception.""" pass -def create_build_progress_dep_graph(build, obs_project, backenddb, content): +def create_build_progress_dep_graph(build, obs_project, content): + sync_out_dir = os.path.join(os.getenv('WORKSPACE'), 'outdir') + + sync_dest = os.path.join(os.getenv('IMG_SYNC_DEST_BASE'), + ".dep_graph", + content.get("build_project_id"), + obs_project) + + print "sync_dest = %s" % sync_dest + + graph_root_dir = os.path.join(sync_out_dir) + print "graph_root_dir = %s" % graph_root_dir + + #make directories if not existed. + os.makedirs(sync_out_dir) + sync(sync_out_dir, os.path.join(os.getenv('IMG_SYNC_DEST_BASE'), + ".dep_graph")) + + sync(sync_out_dir, os.path.join(os.getenv('IMG_SYNC_DEST_BASE'), + ".dep_graph", content.get("build_project_id"))) + + sync(sync_out_dir, os.path.join(os.getenv('IMG_SYNC_DEST_BASE'), + ".dep_graph", content.get("build_project_id"), + obs_project)) + + # copy vis and dep_graph dirs. + vis_dir = os.path.join(os.getenv("WORKSPACE"), "jenkins-scripts/vis") + vis_sync_dest = os.path.join(os.getenv('IMG_SYNC_DEST_BASE'), + ".dep_graph/vis") + sync(vis_dir, vis_sync_dest) + + dep_graph_dir = os.path.join(os.getenv("WORKSPACE"), "jenkins-scripts/dep_graph") + dep_graph_sync_dest = os.path.join(os.getenv('IMG_SYNC_DEST_BASE'), + ".dep_graph/dep_graph") + sync(dep_graph_dir, dep_graph_sync_dest) + + vis_dir = "../../../../vis" + dep_graph_dir = "../../../../dep_graph" + template_filename="jenkins-scripts/common/dep_graph.php.template_simple" + + repo = content.get("repo") + arch = content.get("arch") + + packages_to_be_built = []; + if re.match("^home:prerelease:", obs_project): + info=build.get_info(obs_project) + packages_to_be_built = info['packages'] + + xml = build.get_dependson(obs_project, repo, arch, None, None) + graph_dest_dir = os.path.join(graph_root_dir, repo, arch) + if not os.path.exists(graph_dest_dir): + os.makedirs(graph_dest_dir) + filename = os.path.join(graph_root_dir, repo, arch, "builddepinfo.xml") + with open(filename, 'w') as xml_file: + xml_file.write(xml) + + set_obs_environment(os.getenv("OBS_API_URL"), + os.getenv("OBS_API_USERNAME"), + os.getenv("OBS_API_PASSWD"), + obs_project, + repo, + arch) + + make_dep_graph(filename, graph_dest_dir, + vis_dir, dep_graph_dir, template_filename, + packages_to_be_built) + + # sync to donwload server + sync(sync_out_dir, sync_dest) + +def create_build_progress_dep_graph_post(build, obs_project, backenddb, content): print "creating build_progress_dep_graph..." sync_out_dir = os.path.join(os.getenv('WORKSPACE'), @@ -102,7 +172,7 @@ def create_build_progress_dep_graph(build, obs_project, backenddb, content): template_filename="jenkins-scripts/common/dep_graph.php.template_simple" # copy vis and dep_graph dirs. - jenkins_script_dir = os.path.join(os.getenv("HOME"), "jenkins-scripts"); + jenkins_script_dir = os.path.join(os.getenv("WORKSPACE"), "jenkins-scripts"); shutil.copytree(os.path.join(jenkins_script_dir,"vis"), os.path.join(graph_root_dir, "vis")); shutil.copytree(os.path.join(jenkins_script_dir,"dep_graph"), os.path.join(graph_root_dir, "dep_graph")); @@ -171,7 +241,7 @@ def create_build_progress_dep_graph_prerelease(build, obs_project, obs_linked_pr template_filename="jenkins-scripts/common/dep_graph.php.template_simple" # copy vis and dep_graph dirs. - jenkins_script_dir = os.path.join(os.getenv("HOME"), "jenkins-scripts"); + jenkins_script_dir = os.path.join(os.getenv("WORKSPACE"), "jenkins-scripts"); shutil.copytree(os.path.join(jenkins_script_dir,"vis"), os.path.join(graph_root_dir, "vis")); shutil.copytree(os.path.join(jenkins_script_dir,"dep_graph"), os.path.join(graph_root_dir, "dep_graph")); @@ -223,7 +293,7 @@ def create_build_dep_graph(build, obs_project, backenddb, content): #print package_build_result # copy vis and dep_graph dirs. - jenkins_script_dir = os.path.join(os.getenv("HOME"), "jenkins-scripts"); + jenkins_script_dir = os.path.join(os.getenv("WORKSPACE"), "jenkins-scripts"); shutil.copytree(os.path.join(jenkins_script_dir,"vis"), os.path.join(graph_root_dir, "vis")); shutil.copytree(os.path.join(jenkins_script_dir,"dep_graph"), os.path.join(graph_root_dir, "dep_graph")); @@ -291,7 +361,9 @@ def main(): if action == "prerelease_build_progress": create_build_progress_dep_graph_prerelease(build, obs_project, obs_linked_project, backenddb) elif action == "postrelease_build_progress": - create_build_progress_dep_graph(build, obs_project, backenddb, content) + create_build_progress_dep_graph_post(build, obs_project, backenddb, content) + elif action == "build_progress": + create_build_progress_dep_graph(build, obs_project, content) elif action == "build_dep_graph": create_build_dep_graph(build, obs_project, backenddb, content) else: