blob: 110520cf4f484e0a589ad6abb0a4353bef2dbcac [file] [log] [blame]
# Copyright 2019 The ChromiumOS Authors
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
USE_PYTHON3 = True
def _HasLocalChanges(input_api):
ret = input_api.subprocess.call(["git", "diff", "--exit-code"])
return ret != 0
def CheckGenerated(input_api, output_api):
file_filter = lambda x: x.LocalPath() == "infra/config/recipes.cfg"
results = input_api.canned_checks.CheckJsonParses(
input_api, output_api, file_filter=file_filter
)
if input_api.subprocess.call(["./generate.sh"]):
results.append(output_api.PresubmitError("Error calling generate.sh"))
if _HasLocalChanges(input_api):
msg = (
"Running generate.sh produced a diff. Please "
"run the script, amend your changes, and try again."
)
results.append(output_api.PresubmitError(msg))
return results
def CheckChangeOnUpload(input_api, output_api):
results = []
results.extend(CheckGenerated(input_api, output_api))
return results
def CheckChangeOnCommit(input_api, output_api):
results = []
results.extend(CheckGenerated(input_api, output_api))
return results