aboutsummaryrefslogtreecommitdiff
path: root/cli/query_results
diff options
context:
space:
mode:
Diffstat (limited to 'cli/query_results')
-rwxr-xr-xcli/query_results106
1 files changed, 0 insertions, 106 deletions
diff --git a/cli/query_results b/cli/query_results
deleted file mode 100755
index aaac2565f9..0000000000
--- a/cli/query_results
+++ /dev/null
@@ -1,106 +0,0 @@
-#!/usr/bin/python2
-"""
-Selects all rows and columns that satisfy the condition specified
-and prints the matrix.
-"""
-import optparse
-import common
-from autotest_lib.cli import rpc
-from autotest_lib.database import database_connection
-
-
-# First do all the options parsing
-parser = optparse.OptionParser()
-parser.add_option(
- '-C', '--columns', action='store', dest='columns',
- default='test_name,reason,test_started_time,test_finished_time,job_tag,'
- 'job_name,hostname,platform,kernel,status',
- help='Comma-separated list of column names to display')
-parser.add_option('-w', '--where', action='store', dest='condition',
- help=("The WHERE condition for the query witten in the 'new style' "
- "condition syntax for new tko (see "
- "http://autotest.kernel.org/wiki/TkoHowTo for more info)"))
-parser.add_option(
- '--test-attribute-field', action='append', default=[],
- help='Specifies a test attribute to include as a field. The attribute '
- 'value will be available as a field named attribute_<attribute '
- 'name>. This option may be specified multiple times. Filtering '
- 'must be done slightly differently -- see '
- 'http://autotest.kernel.org/wiki/TkoHowTo#attribute_filtering '
- 'for more details.')
-parser.add_option('--test-label-field', action='append', default=[],
- help='Specifies a test label to include as a field. See '
- '--attribute-field for more details')
-parser.add_option('--iteration-result-field', action='append', default=[],
- help='Specifies an iteration result to include as a field. '
- 'See --attribute-field for more details. Note that '
- 'this causes the rows returned to represent iterations '
- 'rather than plain test results.')
-parser.add_option('--machine-label-field', action='append', default=[],
- help='Specifies a machine label to include as a field. See '
- '--attribute-field for more details')
-parser.add_option('--job-keyval-field', action='append', default=[],
- help='Specifies a job keyval to include as a field. See '
- '--attribute-field for more details')
-parser.add_option('--iteration-attribute-field', action='append', default=[],
- help='Specifies an iteration attribute to include as a '
- 'field. See --attribute-field for more details. Note '
- 'that this causes the rows returned to represent '
- 'iterations rather than plain test results.')
-parser.add_option('-s', '--separator', action='store', default = ' | ',
- dest='separator', help = 'output separator')
-parser.add_option('-n', '--nocount', action='store_true', default=False,
- help='Do not display line counts before each line')
-parser.add_option('-l', '--logpath', action='store_true', default=False,
- help='Reformats the the tag column into a URL \
- like http://autotest/results/[tag]. \
- This will append the tag column if it isn\'t provided.')
-parser.add_option('--host-label', action='store', dest='host_label',
- help=('Return results only for machines currently '
- 'in the specified label'))
-
-(options, args) = parser.parse_args()
-
-if not options.condition:
- parser.error('You must specify a condition.')
-
-where = options.condition.replace('%', '%%')
-tag = 'job_tag'
-
-columns = options.columns.split(',')
-
-url_prefix = rpc.get_autotest_server() + '/results/'
-if options.logpath:
- if tag not in columns:
- columns.append(tag)
- tag_index=columns.index(tag)
-
-if options.host_label:
- database = database_connection.DatabaseConnection("AUTOTEST_WEB")
- database.connect()
- sql = ("SELECT hostname FROM afe_labels JOIN afe_hosts_labels "
- "ON afe_labels.id=afe_hosts_labels.label_id JOIN afe_hosts "
- "ON afe_hosts_labels.host_id=afe_hosts.id WHERE name=%s")
- results = database.execute(sql, options.host_label)
- hosts = [row[0] for row in results]
- where += " AND hostname IN ('" + "','".join(hosts) + "')"
-
-# Grab the data
-tko = rpc.tko_comm()
-count = 0
-test_views = tko.run(
- 'get_test_views', extra_where=where,
- test_attribute_fields=options.test_attribute_field,
- test_label_fields=options.test_label_field,
- iteration_result_fields=options.iteration_result_field,
- machine_label_fields=options.machine_label_field,
- job_keyval_fields=options.job_keyval_field,
- iteration_attribute_fields=options.iteration_attribute_field)
-for test_view in test_views:
- values = [str(test_view[column]) for column in columns]
- if options.logpath:
- values[tag_index] = url_prefix + values[tag_index]
- if not options.nocount:
- print '[%d] ' % count,
- count += 1
- print options.separator.join(values)