Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(357)

Side by Side Diff: PRESUBMIT.py

Issue 2601773004: Adding check for team and component tags in owners files. (Closed)
Patch Set: Addressing comments and adding tests Created 3 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « no previous file | tools/checkteamtags/OWNERS » ('j') | tools/checkteamtags/OWNERS » ('J')
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 # Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 # Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 # Use of this source code is governed by a BSD-style license that can be 2 # Use of this source code is governed by a BSD-style license that can be
3 # found in the LICENSE file. 3 # found in the LICENSE file.
4 4
5 """Top-level presubmit script for Chromium. 5 """Top-level presubmit script for Chromium.
6 6
7 See http://dev.chromium.org/developers/how-tos/depottools/presubmit-scripts 7 See http://dev.chromium.org/developers/how-tos/depottools/presubmit-scripts
8 for more details about the presubmit API built into depot_tools. 8 for more details about the presubmit API built into depot_tools.
9 """ 9 """
10 10
(...skipping 733 matching lines...) Expand 10 before | Expand all | Expand 10 after
744 args += ['--file', f.LocalPath()] 744 args += ['--file', f.LocalPath()]
745 try: 745 try:
746 input_api.subprocess.check_output(args) 746 input_api.subprocess.check_output(args)
747 return [] 747 return []
748 except input_api.subprocess.CalledProcessError as error: 748 except input_api.subprocess.CalledProcessError as error:
749 return [output_api.PresubmitError( 749 return [output_api.PresubmitError(
750 'checkperms.py failed:', 750 'checkperms.py failed:',
751 long_text=error.output)] 751 long_text=error.output)]
752 752
753 753
754 def _CheckTeamTags(input_api, output_api):
755 """Check that OWNERS files have consistent TEAM and COMPONENT tags."""
stgao 2017/01/03 22:46:59 nit: Check -> Checks
RobertoCN 2017/01/04 18:48:59 Done.
756 checkteamtags_tool = input_api.os_path.join(
757 input_api.PresubmitLocalPath(),
758 'tools', 'checkteamtags', 'checkteamtags.py')
759 args = [input_api.python_executable, checkteamtags_tool,
760 '--root', input_api.change.RepositoryRoot()]
761 files = [f.LocalPath() for f in input_api.AffectedFiles()
762 if input_api.os_path.basename(f.AbsoluteLocalPath()) == 'OWNERS']
763 try:
764 if files:
765 input_api.subprocess.check_output(args + files)
766 return []
767 except input_api.subprocess.CalledProcessError as error:
768 return [output_api.PresubmitError(
769 'checkteamtags.py failed:',
770 long_text=error.output)]
771
772
754 def _CheckNoAuraWindowPropertyHInHeaders(input_api, output_api): 773 def _CheckNoAuraWindowPropertyHInHeaders(input_api, output_api):
755 """Makes sure we don't include ui/aura/window_property.h 774 """Makes sure we don't include ui/aura/window_property.h
756 in header files. 775 in header files.
757 """ 776 """
758 pattern = input_api.re.compile(r'^#include\s*"ui/aura/window_property.h"') 777 pattern = input_api.re.compile(r'^#include\s*"ui/aura/window_property.h"')
759 errors = [] 778 errors = []
760 for f in input_api.AffectedFiles(): 779 for f in input_api.AffectedFiles():
761 if not f.LocalPath().endswith('.h'): 780 if not f.LocalPath().endswith('.h'):
762 continue 781 continue
763 for line_num, line in f.ChangedContents(): 782 for line_num, line in f.ChangedContents():
(...skipping 1274 matching lines...) Expand 10 before | Expand all | Expand 10 after
2038 results.extend(_CheckNoIOStreamInHeaders(input_api, output_api)) 2057 results.extend(_CheckNoIOStreamInHeaders(input_api, output_api))
2039 results.extend(_CheckNoUNIT_TESTInSourceFiles(input_api, output_api)) 2058 results.extend(_CheckNoUNIT_TESTInSourceFiles(input_api, output_api))
2040 results.extend(_CheckDCHECK_IS_ONHasBraces(input_api, output_api)) 2059 results.extend(_CheckDCHECK_IS_ONHasBraces(input_api, output_api))
2041 results.extend(_CheckNoNewWStrings(input_api, output_api)) 2060 results.extend(_CheckNoNewWStrings(input_api, output_api))
2042 results.extend(_CheckNoDEPSGIT(input_api, output_api)) 2061 results.extend(_CheckNoDEPSGIT(input_api, output_api))
2043 results.extend(_CheckNoBannedFunctions(input_api, output_api)) 2062 results.extend(_CheckNoBannedFunctions(input_api, output_api))
2044 results.extend(_CheckNoPragmaOnce(input_api, output_api)) 2063 results.extend(_CheckNoPragmaOnce(input_api, output_api))
2045 results.extend(_CheckNoTrinaryTrueFalse(input_api, output_api)) 2064 results.extend(_CheckNoTrinaryTrueFalse(input_api, output_api))
2046 results.extend(_CheckUnwantedDependencies(input_api, output_api)) 2065 results.extend(_CheckUnwantedDependencies(input_api, output_api))
2047 results.extend(_CheckFilePermissions(input_api, output_api)) 2066 results.extend(_CheckFilePermissions(input_api, output_api))
2067 results.extend(_CheckTeamTags(input_api, output_api))
2048 results.extend(_CheckNoAuraWindowPropertyHInHeaders(input_api, output_api)) 2068 results.extend(_CheckNoAuraWindowPropertyHInHeaders(input_api, output_api))
2049 results.extend(_CheckIncludeOrder(input_api, output_api)) 2069 results.extend(_CheckIncludeOrder(input_api, output_api))
2050 results.extend(_CheckForVersionControlConflicts(input_api, output_api)) 2070 results.extend(_CheckForVersionControlConflicts(input_api, output_api))
2051 results.extend(_CheckPatchFiles(input_api, output_api)) 2071 results.extend(_CheckPatchFiles(input_api, output_api))
2052 results.extend(_CheckHardcodedGoogleHostsInLowerLayers(input_api, output_api)) 2072 results.extend(_CheckHardcodedGoogleHostsInLowerLayers(input_api, output_api))
2053 results.extend(_CheckNoAbbreviationInPngFileName(input_api, output_api)) 2073 results.extend(_CheckNoAbbreviationInPngFileName(input_api, output_api))
2054 results.extend(_CheckForInvalidOSMacros(input_api, output_api)) 2074 results.extend(_CheckForInvalidOSMacros(input_api, output_api))
2055 results.extend(_CheckForInvalidIfDefinedMacros(input_api, output_api)) 2075 results.extend(_CheckForInvalidIfDefinedMacros(input_api, output_api))
2056 results.extend(_CheckFlakyTestUsage(input_api, output_api)) 2076 results.extend(_CheckFlakyTestUsage(input_api, output_api))
2057 results.extend(_CheckAddedDepsHaveTargetApprovals(input_api, output_api)) 2077 results.extend(_CheckAddedDepsHaveTargetApprovals(input_api, output_api))
(...skipping 264 matching lines...) Expand 10 before | Expand all | Expand 10 after
2322 results.extend(input_api.canned_checks.CheckTreeIsOpen( 2342 results.extend(input_api.canned_checks.CheckTreeIsOpen(
2323 input_api, 2343 input_api,
2324 output_api, 2344 output_api,
2325 json_url='http://chromium-status.appspot.com/current?format=json')) 2345 json_url='http://chromium-status.appspot.com/current?format=json'))
2326 2346
2327 results.extend(input_api.canned_checks.CheckChangeHasBugField( 2347 results.extend(input_api.canned_checks.CheckChangeHasBugField(
2328 input_api, output_api)) 2348 input_api, output_api))
2329 results.extend(input_api.canned_checks.CheckChangeHasDescription( 2349 results.extend(input_api.canned_checks.CheckChangeHasDescription(
2330 input_api, output_api)) 2350 input_api, output_api))
2331 return results 2351 return results
OLDNEW
« no previous file with comments | « no previous file | tools/checkteamtags/OWNERS » ('j') | tools/checkteamtags/OWNERS » ('J')

Powered by Google App Engine
This is Rietveld 408576698