"""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'),
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"));
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"));
#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"));
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: