def update_unresolvable_broken_packages(project, unresolvable_broken_packages):
+ if unresolvable_broken_packages is None:
+ return
+
# get curr_info_project_id -> get curr_build_project_id for multi profile
query = "SELECT id FROM info_project WHERE project_name = %s"
query_data = (project,)
for p in unresolvable_broken_packages[repo][arch]:
status = unresolvable_broken_packages[repo][arch][p]
+ # INSERT package if package is not present.
+ query = "SELECT id FROM info_package WHERE info_project_id=%s AND package_name=%s "\
+ "AND active_flag='Y' ORDER BY id DESC LIMIT 1"
+ query_data = (curr_info_project_id, p)
+ curr_info_package_id = buildmonitor_db.get_value_from_query_data(query, query_data)
+
+ if curr_info_package_id == INVALID_ID:
+ query = "INSERT INTO info_package (info_project_id,package_name,description,"\
+ "latest_sr_status_id,active_flag) VALUES (%s, %s, %s, %s, %s)"
+ query_data = (curr_info_project_id, p, "", 0, 'Y')
+ buildmonitor_db.do_query(query, query_data)
+
+ query = "SELECT id FROM info_package WHERE info_project_id=%s AND package_name=%s "\
+ "AND active_flag='Y' ORDER BY id DESC LIMIT 1"
+ query_data = (curr_info_project_id, p)
+ curr_info_package_id = buildmonitor_db.get_value_from_query_data(query, query_data)
+
query = "INSERT INTO build_package (build_target_id, info_package_id, start_time," \
"end_time, build_status) VALUES ("\
"(SELECT id FROM build_target WHERE build_project_id=%s AND repository=%s "\
"AND arch=%s ORDER BY id DESC LIMIT 1), "\
- "(SELECT id FROM info_package WHERE info_project_id=%s AND package_name=%s "\
- "AND active_flag='Y' ORDER BY id DESC LIMIT 1), "\
- "NOW(), NOW(), %s)"
- query_data = (curr_build_project_id, repo, arch, curr_info_project_id, p, status)
+ "%s, NOW(), NOW(), %s)"
+ query_data = (curr_build_project_id, repo, arch, curr_info_package_id, status)
buildmonitor_db.do_query(query, query_data)
#===============================================================================