def get_component_impacts_from_url(component_name, regression_range, job_type, platform=None): """Gets component impact string using the build information url.""" start_revision, end_revision = get_start_and_end_revision( regression_range, job_type) if not end_revision: return Impacts() found_impacts = dict() for build in ['stable', 'beta']: build_revision_mappings = revisions.get_build_to_revision_mappings( platform) if not build_revision_mappings: return Impacts() mapping = build_revision_mappings.get(build) if not mapping: return Impacts() chromium_revision = mapping['revision'] component_revision = get_component_information_by_name( chromium_revision, component_name) if not component_revision: return Impacts() branched_from = revisions.revision_to_branched_from( component_revision['url'], component_revision['rev']) if not branched_from: return Impacts() impact = get_impact( { 'revision': branched_from, 'version': mapping['version'] }, start_revision, end_revision) found_impacts[build] = impact return Impacts(found_impacts['stable'], found_impacts['beta'])
def get_impacts_from_url(regression_range, job_type, platform=None): """Gets impact string using the build information url.""" component_name = data_handler.get_component_name(job_type) if component_name: return get_component_impacts_from_url(component_name, regression_range, job_type, platform) start_revision, end_revision = get_start_and_end_revision( regression_range, job_type) if not end_revision: return Impacts() build_revision_mappings = revisions.get_build_to_revision_mappings(platform) if not build_revision_mappings: return Impacts() extended_stable = get_impact( build_revision_mappings.get('extended_stable'), start_revision, end_revision) stable = get_impact( build_revision_mappings.get('stable'), start_revision, end_revision) beta = get_impact( build_revision_mappings.get('beta'), start_revision, end_revision) return Impacts(stable, beta, extended_stable)
def get_impacts_from_url(regression_range, job_type, platform=None): """Gets impact string using the build information url.""" # FIXME: We can't handle component builds atm. if data_handler.get_component_name(job_type): return Impacts() start_revision, end_revision = get_start_and_end_revision( regression_range, job_type) if not end_revision: return Impacts() build_revision_mappings = revisions.get_build_to_revision_mappings(platform) if not build_revision_mappings: return Impacts() stable = get_impact( build_revision_mappings.get('stable'), start_revision, end_revision) beta = get_impact( build_revision_mappings.get('beta'), start_revision, end_revision) return Impacts(stable, beta)
def get_component_impacts_from_url(component_name, regression_range, job_type, platform=None): """Gets component impact string using the build information url.""" start_revision, end_revision = get_start_and_end_revision( regression_range, job_type) if not end_revision: return Impacts() build_revision_mappings = revisions.get_build_to_revision_mappings(platform) if not build_revision_mappings: return Impacts() found_impacts = dict() for build in ['extended_stable', 'stable', 'beta']: mapping = build_revision_mappings.get(build) # TODO(yuanjunh): bypass for now but remove it after ES is enabled. if build == 'extended_stable' and not mapping: found_impacts[build] = Impact() continue if not mapping: return Impacts() chromium_revision = mapping['revision'] component_revision = get_component_information_by_name( chromium_revision, component_name) if not component_revision: return Impacts() branched_from = revisions.revision_to_branched_from( component_revision['url'], component_revision['rev']) if not branched_from: return Impacts() impact = get_impact({ 'revision': branched_from, 'version': mapping['version'] }, start_revision, end_revision) found_impacts[build] = impact return Impacts(found_impacts['stable'], found_impacts['beta'], found_impacts['extended_stable'])
def get_component_impacts_from_url(component_name, regression_range, job_type, platform=None): """Gets component impact string using the build information url.""" start_revision, end_revision = get_start_and_end_revision( regression_range, job_type) if not end_revision: return Impacts() found_impacts = {} for build in ["stable", "beta"]: build_revision_mappings = revisions.get_build_to_revision_mappings( platform) if not build_revision_mappings: return Impacts() mapping = build_revision_mappings.get(build) if not mapping: return Impacts() chromium_revision = mapping["revision"] component_revision = get_component_information_by_name( chromium_revision, component_name) if not component_revision: return Impacts() branched_from = revisions.revision_to_branched_from( component_revision["url"], component_revision["rev"]) if not branched_from: return Impacts() impact = get_impact( { "revision": branched_from, "version": mapping["version"] }, start_revision, end_revision, ) found_impacts[build] = impact return Impacts(found_impacts["stable"], found_impacts["beta"])