for p in unresolvable_broken_packages[repo][arch]:
status = unresolvable_broken_packages[repo][arch][p]
+ # INSERT build_target_id if not present
+ query = "SELECT id FROM build_target WHERE build_project_id=%s AND repository=%s "\
+ "AND arch=%s ORDER BY id DESC LIMIT 1"
+ query_data = (curr_build_project_id, repo, arch)
+ curr_build_target_id = buildmonitor_db.get_value_from_query_data(query, query_data)
+
+ if curr_build_target_id == INVALID_ID:
+ query = "INSERT INTO build_target (build_project_id, repository, arch, "\
+ "start_time, end_time, status, status_reason, last_flag) "\
+ "VALUES (%s, %s, %s, NOW(), NOW(), 'S', '', 'Y')"
+ query_data = (curr_build_project_id, repo, arch)
+ buildmonitor_db.do_query(query, query_data)
+
+ query = "SELECT id FROM build_target WHERE build_project_id=%s AND repository=%s "\
+ "AND arch=%s ORDER BY id DESC LIMIT 1"
+ query_data = (curr_build_project_id, repo, arch)
+ curr_build_target_id = buildmonitor_db.get_value_from_query_data(query, query_data)
+
# 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"
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), "\
- "%s, NOW(), NOW(), %s)"
- query_data = (curr_build_project_id, repo, arch, curr_info_package_id, status)
+ "end_time, build_status) "\
+ "VALUES (%s, %s, NOW(), NOW(), %s)"
+ query_data = (curr_build_target_id, curr_info_package_id, status)
buildmonitor_db.do_query(query, query_data)
#===============================================================================