blob: 6c886b8e09618aca6ec4d2ea3d56d2aec06a8f78 [file] [log] [blame]
# Copyright 2018 The Fuchsia Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
"""Recipe for checking license text in the source code.
Requires topaz source to be present in the manifest.
"""
from recipe_engine.recipe_api import Property
DEPS = [
"fuchsia/checkout",
"recipe_engine/buildbucket",
"recipe_engine/context",
"recipe_engine/path",
"recipe_engine/properties",
"recipe_engine/step",
]
PROPERTIES = {
"manifest": Property(kind=str, help="Jiri manifest to use. Should include //topaz"),
"remote": Property(kind=str, help="Remote manifest repository"),
}
def RunSteps(api, remote, manifest):
checkout = api.checkout.fuchsia_with_options(
path=api.path["start_dir"],
build=api.buildbucket.build,
manifest=manifest,
remote=remote,
)
licenses_path = checkout.root_dir.join("topaz", "tools", "check-licenses.sh")
with api.context(cwd=checkout.root_dir):
api.step("licenses", [licenses_path])
def GenTests(api):
yield (
api.test("default_ci")
+ api.buildbucket.ci_build(git_repo="https://fuchsia.googlesource.com/topaz")
+ api.properties(
manifest="fuchsia", remote="https://fuchsia.googlesource.com/manifest",
)
)
yield (
api.test("default_cq")
+ api.buildbucket.try_build(git_repo="https://fuchsia.googlesource.com/topaz")
+ api.properties(
manifest="fuchsia", remote="https://fuchsia.googlesource.com/manifest",
)
)