Chromium Code Reviews| Index: recipes.py |
| diff --git a/recipes.py b/recipes.py |
| index e839b59f78cd7011e2bab640b09aa978d2ee863a..b522c4aacb767d1c928c6d9a2516f2d5b70b2a43 100755 |
| --- a/recipes.py |
| +++ b/recipes.py |
| @@ -91,6 +91,7 @@ def run(package_deps, args, op_args): |
| from recipe_engine import loader |
| from recipe_engine import step_runner |
| from recipe_engine import stream |
| + from recipe_engine import stream_logdog |
| def get_properties_from_args(args): |
| properties = dict(x.split('=', 1) for x in args) |
| @@ -151,12 +152,36 @@ def run(package_deps, args, op_args): |
| old_cwd = os.getcwd() |
| os.chdir(workdir) |
| - stream_engine = stream.ProductStreamEngine( |
| - stream.StreamEngineInvariants(), |
| - stream.AnnotatorStreamEngine( |
| + |
| + # Construct our stream engine. |
| + # |
| + # We begin with a ProductStreamEngine seeded with StreamEngineInvariants. As |
| + # we evaluate our configuration, we will append additional StreamEngine |
| + # instances to the ProductStreamEngine. |
| + stream_engine = stream.ProductStreamEngine(stream.StreamEngineInvariants()) |
| + |
| + def build_annotation_stream_engine(): |
| + return stream.AnnotatorStreamEngine( |
| sys.stdout, |
| emit_timestamps=(args.timestamps or |
| - op_args.annotation_flags.emit_timestamp))) |
| + op_args.annotation_flags.emit_timestamp), |
| + ) |
| + |
| + if op_args.logdog.streamserver_uri: |
| + # We're using LogDog. |
|
martiniss
2016/09/01 21:59:48
add some logging?
dnj
2016/09/07 17:54:58
Done.
|
| + stream_engine.append_stream_engine(stream_logdog.StreamEngine( |
| + streamserver_uri=op_args.logdog.streamserver_uri, |
| + name_base=(op_args.logdog.name_base or None), |
| + annotation_name=(op_args.logdog.annotation_name or None), |
| + )) |
| + |
| + # If we're teeing, also fold in a standard annotation stream engine. |
| + if op_args.logdog.tee: |
| + stream_engine.append_stream_engine(build_annotation_stream_engine()) |
| + else: |
| + # Not using LogDog; use a standard annotation stream engine. |
| + stream_engine.append_stream_engine(build_annotation_stream_engine()) |
| + |
| with stream_engine: |
| # Emit initial properties if configured to do so. |
| if op_args.annotation_flags.emit_initial_properties: |