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

Side by Side Diff: build/android/pylib/utils/logdog_helper.py

Issue 2835203004: Fix logdog_wrapper to not upload if logdog binary does not exist. (Closed)
Patch Set: fixes Created 3 years, 7 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 | build/android/test_wrapper/logdog_wrapper.py » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 # Copyright 2017 The Chromium Authors. All rights reserved. 1 # Copyright 2017 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 """Helper functions to upload data to logdog.""" 5 """Helper functions to upload data to logdog."""
6 6
7 import logging 7 import logging
8 import os 8 import os
9 import sys 9 import sys
10 10
11 from pylib import constants 11 from pylib import constants
12 from pylib.utils import decorators 12 from pylib.utils import decorators
13 13
14 sys.path.insert(0, os.path.abspath(os.path.join( 14 sys.path.insert(0, os.path.abspath(os.path.join(
15 constants.DIR_SOURCE_ROOT, 'tools', 'swarming_client'))) 15 constants.DIR_SOURCE_ROOT, 'tools', 'swarming_client')))
16 from libs.logdog import bootstrap # pylint: disable=import-error 16 from libs.logdog import bootstrap # pylint: disable=import-error
17 17
18 18
19 @decorators.NoRaiseException(default_return_value='') 19 @decorators.NoRaiseException(default_return_value='',
20 exception_message=('Ignore this exception. '
21 'crbug.com/675666'))
20 def text(name, data): 22 def text(name, data):
21 """Uploads text to logdog. 23 """Uploads text to logdog.
22 24
23 Args: 25 Args:
24 name: Name of the logdog stream. 26 name: Name of the logdog stream.
25 data: String with data you want to upload. 27 data: String with data you want to upload.
26 28
27 Returns: 29 Returns:
28 Link to view uploaded text in logdog viewer. 30 Link to view uploaded text in logdog viewer.
29 """ 31 """
30 logging.info('Writing text to logdog stream, %s', name) 32 logging.info('Writing text to logdog stream, %s', name)
31 with get_logdog_client().text(name) as stream: 33 with get_logdog_client().text(name) as stream:
32 stream.write(data) 34 stream.write(data)
33 return stream.get_viewer_url() 35 return stream.get_viewer_url()
34 36
35 37
36 @decorators.NoRaiseException(default_return_value=None) 38 @decorators.NoRaiseException(default_return_value=None,
39 exception_message=('Ignore this exception. '
40 'crbug.com/675666'))
37 def open_text(name): 41 def open_text(name):
38 """Returns a file like object which you can write to. 42 """Returns a file like object which you can write to.
39 43
40 Args: 44 Args:
41 name: Name of the logdog stream. 45 name: Name of the logdog stream.
42 46
43 Returns: 47 Returns:
44 A file like object. close() file when done. 48 A file like object. close() file when done.
45 """ 49 """
46 logging.info('Opening text logdog stream, %s', name) 50 logging.info('Opening text logdog stream, %s', name)
47 return get_logdog_client().open_text(name) 51 return get_logdog_client().open_text(name)
48 52
49 53
50 @decorators.NoRaiseException(default_return_value='') 54 @decorators.NoRaiseException(default_return_value='',
55 exception_message=('Ignore this exception. '
56 'crbug.com/675666'))
51 def binary(name, binary_path): 57 def binary(name, binary_path):
52 """Uploads binary to logdog. 58 """Uploads binary to logdog.
53 59
54 Args: 60 Args:
55 name: Name of the logdog stream. 61 name: Name of the logdog stream.
56 binary_path: Path to binary you want to upload. 62 binary_path: Path to binary you want to upload.
57 63
58 Returns: 64 Returns:
59 Link to view uploaded binary in logdog viewer. 65 Link to view uploaded binary in logdog viewer.
60 """ 66 """
61 logging.info('Writing binary to logdog stream, %s', name) 67 logging.info('Writing binary to logdog stream, %s', name)
62 with get_logdog_client().binary(name) as stream: 68 with get_logdog_client().binary(name) as stream:
63 with open(binary_path, 'r') as f: 69 with open(binary_path, 'r') as f:
64 stream.write(f.read()) 70 stream.write(f.read())
65 return stream.get_viewer_url() 71 return stream.get_viewer_url()
66 72
67 73
68 @decorators.NoRaiseException(default_return_value='') 74 @decorators.NoRaiseException(default_return_value='',
75 exception_message=('Ignore this exception. '
76 'crbug.com/675666'))
69 def get_viewer_url(name): 77 def get_viewer_url(name):
70 """Get Logdog viewer URL. 78 """Get Logdog viewer URL.
71 79
72 Args: 80 Args:
73 name: Name of the logdog stream. 81 name: Name of the logdog stream.
74 82
75 Returns: 83 Returns:
76 Link to view uploaded binary in logdog viewer. 84 Link to view uploaded binary in logdog viewer.
77 """ 85 """
78 return get_logdog_client().get_viewer_url(name) 86 return get_logdog_client().get_viewer_url(name)
79 87
80 88
81 @decorators.Memoize 89 @decorators.Memoize
82 def get_logdog_client(): 90 def get_logdog_client():
83 logging.info('Getting logdog client.') 91 logging.info('Getting logdog client.')
84 return bootstrap.ButlerBootstrap.probe().stream_client() 92 return bootstrap.ButlerBootstrap.probe().stream_client()
85 93
OLDNEW
« no previous file with comments | « no previous file | build/android/test_wrapper/logdog_wrapper.py » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698