Chromium Code Reviews| Index: tools/metrics/ukm/PRESUBMIT.py |
| diff --git a/tools/metrics/ukm/PRESUBMIT.py b/tools/metrics/ukm/PRESUBMIT.py |
| new file mode 100644 |
| index 0000000000000000000000000000000000000000..624cbb4b4c8dbe0b901e978f099bd9221459674a |
| --- /dev/null |
| +++ b/tools/metrics/ukm/PRESUBMIT.py |
| @@ -0,0 +1,33 @@ |
| +# Copyright 2017 The Chromium Authors. All rights reserved. |
| +# Use of this source code is governed by a BSD-style license that can be |
| +# found in the LICENSE file. |
| + |
| +"""Presubmit script for ukm.xml. |
| + |
| +See http://dev.chromium.org/developers/how-tos/depottools/presubmit-scripts |
| +for more details on the presubmit API built into gcl. |
| +""" |
| + |
| + |
| +def CheckChange(input_api, output_api): |
| + """Checks that ukm.xml is pretty-printed and well-formatted.""" |
| + for f in input_api.AffectedTextFiles(): |
| + p = f.AbsoluteLocalPath() |
|
rkaplow
2017/03/30 01:26:20
optional, put ukm.xml as a const
Steven Holte
2017/03/30 22:42:23
Done.
|
| + if (input_api.basename(p) == 'ukm.xml' |
| + and input_api.os_path.dirname(p) == input_api.PresubmitLocalPath()): |
| + cwd = input_api.os_path.dirname(p) |
| + exit_code = input_api.subprocess.call( |
| + ['python', 'pretty_print.py', '--presubmit'], cwd=cwd) |
| + if exit_code != 0: |
| + return [output_api.PresubmitError( |
| + 'ukm.xml is not formatted correctly; run %s/pretty_print.py ' |
| + 'to fix' % input_api.PresubmitLocalPath())] |
| + return [] |
| + |
| + |
| +def CheckChangeOnUpload(input_api, output_api): |
| + return CheckChange(input_api, output_api) |
| + |
| + |
| +def CheckChangeOnCommit(input_api, output_api): |
| + return CheckChange(input_api, output_api) |