History log of /external/autotest/cli/topic_common.py
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
6818633834ad52c3de153235639ea9299a6e9a6d 28-Apr-2015 Matthew Sartori <msartori@chromium.org> [autotest] Require lock reason to lock device

When locking a device, a locking reason now must be provided.
This applies to both adding a new device, and modifying an
existing device from both the web frontend and the atest
command-line tool.

BUG=chromium:336805
DEPLOY=migrate
TEST=Tested adding locked/unlocked devices and locking/unlocking devices
from both the web frontend and using the 'atest host ...' command-line tools.

Change-Id: I3a8cd8891a2999f026dd709ae8a79e2b8cbc251a
Reviewed-on: https://chromium-review.googlesource.com/267595
Tested-by: Matthew Sartori <msartori@chromium.org>
Reviewed-by: Dan Shi <dshi@chromium.org>
Commit-Queue: Matthew Sartori <msartori@chromium.org>
/external/autotest/cli/topic_common.py
0739d68fcbd84d02839a85ce3c594e774e82c602 26-Feb-2015 Simran Basi <sbasi@google.com> Moblab: Servo Support via Host Attributes.

Moblab devices will look for servo_args inside a host's host
attributes.

Host attributes can be set via the CLI or the Web Frontend.

CLI to see attributes:
atest host stat <host>

CLI to set attribute:
atest host mod --attribute <attribute> --value <value> <host>

Updated the afe's management system so that it properly configures
the admin interface to allow editing of host attributes.

BUG=chromium:394544
TEST=local moblab setup. Tested both CLI and AFE host attribute
manipulation. Launched Servod, and ensure servo host is only
created when the attribute is applied to the host.

Change-Id: Ie3cccab31aa7518435ef0abc6ce206363406c272
Reviewed-on: https://chromium-review.googlesource.com/255550
Reviewed-by: Simran Basi <sbasi@chromium.org>
Commit-Queue: Simran Basi <sbasi@chromium.org>
Tested-by: Simran Basi <sbasi@chromium.org>
/external/autotest/cli/topic_common.py
211c5acb05537a3a0835e60a3c42c12aa5e08e8e 03-Mar-2015 Simran Basi <sbasi@chromium.org> Revert "Moblab: Servo Support via Host Attributes."

This reverts commit 71f190bc31be36311c1c59d762a13a28754d7ea9.

Reverting as the db migration does not work on systems that have not touched the afe at all.

Change-Id: I0c6875ec17f9362b7e646471b6ae5d06c70b770d
Reviewed-on: https://chromium-review.googlesource.com/255350
Reviewed-by: Simran Basi <sbasi@chromium.org>
Tested-by: Simran Basi <sbasi@chromium.org>
/external/autotest/cli/topic_common.py
71f190bc31be36311c1c59d762a13a28754d7ea9 26-Feb-2015 Simran Basi <sbasi@google.com> Moblab: Servo Support via Host Attributes.

Moblab devices will look for servo_args inside a host's host
attributes.

Host attributes can be set via the CLI or the Web Frontend.

CLI to see attributes:
atest host stat <host>

CLI to set attribute:
atest host mod --attribute <attribute> --value <value> <host>

For the Web Frontend, we require a DB change to make the host
attributes panel visible in the admin interface.

BUG=chromium:394544
TEST=local moblab setup. Tested both CLI and AFE host attribute
manipulation. Launched Servod, and ensure servo host is only
created when the attribute is applied to the host.
DEPLOY=migrate

Change-Id: I9fb3e8ab6d386104c7e9ed555eaa110a0ae72b02
Reviewed-on: https://chromium-review.googlesource.com/253760
Reviewed-by: Simran Basi <sbasi@chromium.org>
Commit-Queue: Simran Basi <sbasi@chromium.org>
Tested-by: Simran Basi <sbasi@chromium.org>
/external/autotest/cli/topic_common.py
25e1fd446390578299d7b7da0f84914a0728c5fc 19-Dec-2014 Dan Shi <dshi@chromium.org> [autotest] Add atest stable_version command to manage stable versions.

Add a decorator require_confirmation to atest, any delete action will prompt
for confirmation, use option --no-confirmation to skip that. It's applicable
to command like atest label delete, atest host delete.

Add 3 actions for topic stable_version:
list: Show version of a given board or list all boards and their stable
versions if --board option is not specified.

$ ./atest stable_version list
==============================
board | version
------------------------------
DEFAULT | R41-4687.0.0
peppy | R40-4555.0.0
==============================

modify: Set the stable version of a given board to the given value.

$ ./atest stable_version modify -b peppy -i R40-4515.0.0
Stable version for board peppy is changed from R40-4555.0.0.0 to R40-4515.0.0.

delete: Delete the stable version of a given board. So its stable version will
use the value for board `DEFAULT`.

$ ./atest stable_version delete -b peppy
Are you sure to delete stable version for board peppy? After this action is
done, stable version for board peppy will be R41.0.0.0
Continue? [y/N] y
Stable version for board peppy is deleted.

DEPLOY=apache
BUG=chromium:436656
TEST=local setup, unittest

Change-Id: I31047740a4886854aa653b1bf0f16c5f5c7a3f14
Reviewed-on: https://chromium-review.googlesource.com/236951
Tested-by: Dan Shi <dshi@chromium.org>
Reviewed-by: Simran Basi <sbasi@chromium.org>
Commit-Queue: Dan Shi <dshi@chromium.org>
Trybot-Ready: Dan Shi <dshi@chromium.org>
/external/autotest/cli/topic_common.py
a504856da45127af5b28dddc85d68b7817c6e311 12-Dec-2014 Prashanth Balasubramanian <beeps@google.com> [autotest] Get atest to list the shard a host is on.

TEST=Ran atest host list.
BUG=chromium:438858

Change-Id: I0ec46f1d3f8068c0f2144a8a0e5a769cf81a0c96
Reviewed-on: https://chromium-review.googlesource.com/235545
Reviewed-by: Prashanth B <beeps@chromium.org>
Tested-by: Prashanth B <beeps@chromium.org>
Commit-Queue: Prashanth B <beeps@chromium.org>
Trybot-Ready: Prashanth B <beeps@chromium.org>
/external/autotest/cli/topic_common.py
3963caa4e714020b0eeba91b984c709ce8f24d39 26-Nov-2014 Dan Shi <dshi@chromium.org> [autotest] Change atest to include topic server

This CL add `server` to the list of atest topics, so `server` will be listed
in available topic when user type `atest -h`. There is no functionality
change. atest_unittest is updated due to the change of topic list.

BUG=chromium:424778
CQ-DEPEND=CL:232003
TEST=unittest, atest command

Change-Id: I0cf1ea1d70b8ebe87db6006e792bc5219a15871a
Reviewed-on: https://chromium-review.googlesource.com/232101
Tested-by: Dan Shi <dshi@chromium.org>
Reviewed-by: Simran Basi <sbasi@chromium.org>
Commit-Queue: Dan Shi <dshi@chromium.org>
/external/autotest/cli/topic_common.py
8b110eeff624e9724c1b717394d0828b3371221f 16-Sep-2014 Jakob Juelich <jakobjuelich@chromium.org> [autotest] Manage shards with atest

This adds functionality to list, create and delete shards to atest.

BUG=None
TEST=Ran suites, manual test of create/list/delete.

Change-Id: I0771d0c1b46c7c6890819822204f42ac2211b104
Reviewed-on: https://chromium-review.googlesource.com/218295
Tested-by: Jakob Jülich <jakobjuelich@chromium.org>
Reviewed-by: Prashanth B <beeps@chromium.org>
Commit-Queue: Jakob Jülich <jakobjuelich@chromium.org>
/external/autotest/cli/topic_common.py
c2863163f0305e441e3178b88ab5a80656ca777b 12-Jul-2010 jamesren <jamesren@592f7852-d20e-0410-864c-8624ca9c26a4> (Submitting for dalecurtis. For some reason, Patchwork doesn't want to pick
up his patches...)

All,

First off, sorry for the spam, hopefully this will be last message and
Patchwork will finally pick up the patch. Reposted with modifications from
prior discussion per James Ren. Credit for suggestion to split on commas
goes to Jongki Suwandi.

The "host list", "host create", and "job create" command line options for
the atest CLI module do not support labels with commas. In our deployment we
have several labels which contain commas, leading to some bad parsing when
trying to use the CLI tools. I've added escaped comma support to the
topic_common.item_parse_info.get_values.__get_items(...) function to fix
this.

For example, atest host list --label "label0,comma\,label" will now parse
the labels as 'label0' and 'comma,label'.

Any option using topic_common.item_parse_info gets this behavior for free.
Specifically for our needs, I've changed the "atest host list" and "atest
job create" methods from using <string>.split(',') to
topic_common.item_parse_info for labels.

Implementation wise, I modified the
topic_common.item_parse_info.get_values.__get_items(...) regex so that it
would only split commas not preceded by slashes. In order to handle labels
that may end in slashes, I replace double slashes with a null character
before splitting and then put a single slash back afterwards. The new regex
is r'(?<!\),|\s' if space splitting is enabled and r'(?<!\),' otherwise.

Testing was done through 11 new unit tests, exercising escaped commas with
and without preceding escaped slashes. As well as manual testing on our own
deployment.

All unit tests pass and existing deployments should not be affected. A minor
quibble is consistency from a user point of view. I've only added support
for escaped commas to the topic_common.item_parse_info class, but there are
a couple other areas which are still using <string>.split(',') to parse
their options. Specifically status names, host names, test names, and
dependencies in the host.py and job.py files. I've left these alone for now,
but if anyone objects I can roll them in.

I've attached the patch file for the changes, but if you prefer a more GUI
driven experience, you can see the change list here:

http://codereview.chromium.org/2740001/show

Risk: Low-Medium (CLI infrastructure and tests modified)
Visibility: CLI users
Signed-off-by: Dale Curtis

Regards,

Dale Curtis
Software Engineer in Test @ Google



git-svn-id: http://test.kernel.org/svn/autotest/trunk@4718 592f7852-d20e-0410-864c-8624ca9c26a4
/external/autotest/cli/topic_common.py
cd26d048f4ae1e5ec969576e9e0c2f8791f11295 03-May-2010 mbligh <mbligh@592f7852-d20e-0410-864c-8624ca9c26a4> Don't ignore unexpected exceptions. Have the mock report the playback errors inline with the other calls.

Signed-off-by: Jean-Marc Eurin <jmeurin@google.com>


git-svn-id: http://test.kernel.org/svn/autotest/trunk@4458 592f7852-d20e-0410-864c-8624ca9c26a4
/external/autotest/cli/topic_common.py
b68405d62bbf9b0c4a640754d6aaa2892eca9948 11-Mar-2010 mbligh <mbligh@592f7852-d20e-0410-864c-8624ca9c26a4> Better error handling and message when the (site) authentication didn't work.

Signed-off-by: Jean-Marc Eurin <jmeurin@google.com>


git-svn-id: http://test.kernel.org/svn/autotest/trunk@4299 592f7852-d20e-0410-864c-8624ca9c26a4
/external/autotest/cli/topic_common.py
53d91e25566d3de62f3cefbef2cbfdd8f43ef719 15-Jan-2010 showard <showard@592f7852-d20e-0410-864c-8624ca9c26a4> In debug mode, have the CLI print the full entity body for an error code response.

Signed-off-by: Steve Howard <showard@google.com>


git-svn-id: http://test.kernel.org/svn/autotest/trunk@4117 592f7852-d20e-0410-864c-8624ca9c26a4
/external/autotest/cli/topic_common.py
12b45582c04b2417036a6f11afc843ac5fddea50 11-Jan-2010 lmr <lmr@592f7852-d20e-0410-864c-8624ca9c26a4> Massive permission fix

Fix permissions for all the development tree

Signed-off-by: Lucas Meneghel Rodrigues <lmr@redhat.com>


git-svn-id: http://test.kernel.org/svn/autotest/trunk@4094 592f7852-d20e-0410-864c-8624ca9c26a4
/external/autotest/cli/topic_common.py
fca5ed16315cef727b62664815848b773fb6de64 06-Nov-2009 mbligh <mbligh@592f7852-d20e-0410-864c-8624ca9c26a4> * Add ability to CLI job_stat to display only a list of hosts for a given
job with --list-hosts. Also adds --list-hosts-status which takes a
list of statuses as an argument and displays hosts in each status.
* Remove the check that prevents running a server side job with both
the --control-file and --kernel options. This works now.


Risk(Low): New functionality could possibly break job_stat
Visibility(Low): Useful for grabbing machine lists from Autotest jobs

Signed-off-by: Ryan Kubiak <rkubiak@google.com>


git-svn-id: http://test.kernel.org/svn/autotest/trunk@3901 592f7852-d20e-0410-864c-8624ca9c26a4
/external/autotest/cli/topic_common.py
552d240e2fe1effe87055a1fb7592933942530e5 18-Sep-2009 mbligh <mbligh@592f7852-d20e-0410-864c-8624ca9c26a4> Add hack to disable wrapping via environment: AUTOTEST_CLI_NO_WRAP
Added because existing output wraps in unpredictable places and makes parsing difficult.

Signed-off-by: Rachel Kroll <rkroll@google.com>


git-svn-id: http://test.kernel.org/svn/autotest/trunk@3748 592f7852-d20e-0410-864c-8624ca9c26a4
/external/autotest/cli/topic_common.py
1ef218db76c473c28627377d8f50d6e6c6743289 03-Aug-2009 mbligh <mbligh@592f7852-d20e-0410-864c-8624ca9c26a4> This is the result of a batch reindent.py across our tree.
As Martin pointed out, we ought to be more careful and
create a pre-svn commit script to avoid inserting trash
in the tree, meanwhile, this is a good start to cleanup
things

Signed-off-by: Lucas Meneghel Rodrigues <lmr@redhat.com>


git-svn-id: http://test.kernel.org/svn/autotest/trunk@3487 592f7852-d20e-0410-864c-8624ca9c26a4
/external/autotest/cli/topic_common.py
5a496088c7daa10aad13580615bfd157c4cd8180 03-Aug-2009 mbligh <mbligh@592f7852-d20e-0410-864c-8624ca9c26a4> Make 'job clone --id' an action instead of 'job create --clone'.
Add the backward compatibility method and call.

This is a first step in allowing to specify different hosts when cloning,
but it's just a code restructuring, it doesn't fix anything (and hopefully
doesnt' break new things either).

Signed-off-by: Jean-Marc Eurin <jmeurin@google.com>


git-svn-id: http://test.kernel.org/svn/autotest/trunk@3480 592f7852-d20e-0410-864c-8624ca9c26a4
/external/autotest/cli/topic_common.py
088b8262a348e22fbfa246e210916b9e92b42c3d 02-Jul-2009 showard <showard@592f7852-d20e-0410-864c-8624ca9c26a4> Adds the ability to list atomic labels via 'atest label list --atomicgroup'
Adds ability to parse values from nested dicts to topic_common for the above.

Signed-off-by: Gregory Smith <gps@google.com>


git-svn-id: http://test.kernel.org/svn/autotest/trunk@3350 592f7852-d20e-0410-864c-8624ca9c26a4
/external/autotest/cli/topic_common.py
838c747138ffceb8ee26f04e1d4e6a442f127e6a 13-May-2009 mbligh <mbligh@592f7852-d20e-0410-864c-8624ca9c26a4> Always display the details if an ACL is specified.

Signed-off-by: Jean-Marc Eurin <jmeurin@google.com>


git-svn-id: http://test.kernel.org/svn/autotest/trunk@3131 592f7852-d20e-0410-864c-8624ca9c26a4
/external/autotest/cli/topic_common.py
a1e74b3e9d68792fae0c926f89b6de1736b1fe21 12-May-2009 showard <showard@592f7852-d20e-0410-864c-8624ca9c26a4> Add job option for whether or not to parse failed repair results as part of a job, with a default value in global_config. Since the number of options associated with a job is getting out of hand, I packaged them up into a dict in the RPC entry point and passed them around that way from then on.

Signed-off-by: Steve Howard <showard@google.com>



git-svn-id: http://test.kernel.org/svn/autotest/trunk@3110 592f7852-d20e-0410-864c-8624ca9c26a4
/external/autotest/cli/topic_common.py
9deeefadc178834bf322d03e27e28e0fbdb2594f 02-May-2009 mbligh <mbligh@592f7852-d20e-0410-864c-8624ca9c26a4> Re-factor the option parsing following a suggestion from Greg.
Eliminate the <topic>.parse altogether.

Signed-off-by: Jean-Marc Eurin <jmeurin@google.com>


git-svn-id: http://test.kernel.org/svn/autotest/trunk@3081 592f7852-d20e-0410-864c-8624ca9c26a4
/external/autotest/cli/topic_common.py
fb64e6a3a4403534ae1d136c72010036afebe8ff 22-Apr-2009 showard <showard@592f7852-d20e-0410-864c-8624ca9c26a4> Add atomicgroup support to the command line interface.

Signed-off-by: Gregory Smith <gps@google.com>


git-svn-id: http://test.kernel.org/svn/autotest/trunk@3030 592f7852-d20e-0410-864c-8624ca9c26a4
/external/autotest/cli/topic_common.py
8c7b04c52a8881333ac828f6a1976cafe8412a4a 25-Mar-2009 mbligh <mbligh@592f7852-d20e-0410-864c-8624ca9c26a4> Getting rid of the socket timeout tunes, except for the kernel uploads. Now that the servers are more stable, they seem unnecessary and created some spurious failures.

Also fixing a bad patch application in job.py

Signed-off-by: Jean-Marc Eurin <jmeurin@google.com>



git-svn-id: http://test.kernel.org/svn/autotest/trunk@2924 592f7852-d20e-0410-864c-8624ca9c26a4
/external/autotest/cli/topic_common.py
6a1c421dd9e40241766ce99acfd21d070b6cd418 16-Mar-2009 mbligh <mbligh@592f7852-d20e-0410-864c-8624ca9c26a4> As atest's --parse option is supposed to output easily parsable data, it is better
not to print 'No results' when no results is returned. Instead, prints nothing.

From: Jean Parpaillon <jean.parpaillon@kerlabs.com>



git-svn-id: http://test.kernel.org/svn/autotest/trunk@2880 592f7852-d20e-0410-864c-8624ca9c26a4
/external/autotest/cli/topic_common.py
8fadff33647af07f6f3380f306916ba3ddf50a69 09-Mar-2009 mbligh <mbligh@592f7852-d20e-0410-864c-8624ca9c26a4> Synch count is now returned by the job stat RPC.

Signed-off-by: Jean-Marc Eurin <jmeurin@google.com>



git-svn-id: http://test.kernel.org/svn/autotest/trunk@2859 592f7852-d20e-0410-864c-8624ca9c26a4
/external/autotest/cli/topic_common.py
47dc4d21845de831d979d3a5f51e31f4bbf2cc2a 12-Feb-2009 mbligh <mbligh@592f7852-d20e-0410-864c-8624ca9c26a4> Change the key/val delimiter to | by default. Make it an option.

Signed-off-by: Jean-Marc Eurin <jmeurin@google.com>



git-svn-id: http://test.kernel.org/svn/autotest/trunk@2783 592f7852-d20e-0410-864c-8624ca9c26a4
/external/autotest/cli/topic_common.py
0887d402476b4a873f0664ddb88d3e43005f6113 30-Jan-2009 mbligh <mbligh@592f7852-d20e-0410-864c-8624ca9c26a4> Fix atest label list --all. A FE change from 0/1 to False/True had broken it.

Signed-off-by: Jean-Marc Eurin <jmeurin@google.com>




git-svn-id: http://test.kernel.org/svn/autotest/trunk@2713 592f7852-d20e-0410-864c-8624ca9c26a4
/external/autotest/cli/topic_common.py
d876f459fff6cc4994cab329b1f80c99a86edcbd 03-Dec-2008 mbligh <mbligh@592f7852-d20e-0410-864c-8624ca9c26a4> gps pointed out that "== and != work in most cases but its better to use is
and is not as you'll never run into a case where someone's __eq__ or __ne__
method do the wrong thing."

Signed-off-by: Martin J. Bligh <mbligh@google.com>



git-svn-id: http://test.kernel.org/svn/autotest/trunk@2533 592f7852-d20e-0410-864c-8624ca9c26a4
/external/autotest/cli/topic_common.py
7b969d5a2d37e2f658aec477a93d5e5743935a74 03-Dec-2008 mbligh <mbligh@592f7852-d20e-0410-864c-8624ca9c26a4> One more parse function with "no results"

Signed-off-by: Jean-Marc Eurin <jmeurin@google.com>



git-svn-id: http://test.kernel.org/svn/autotest/trunk@2532 592f7852-d20e-0410-864c-8624ca9c26a4
/external/autotest/cli/topic_common.py
7a3ebe30d13f8dc7e8d3d0990b8b026be75771f3 01-Dec-2008 mbligh <mbligh@592f7852-d20e-0410-864c-8624ca9c26a4> Continue to add/remove the valid hosts or users to the label or ACL in
case of failures.
Modified the corresponding unittests:
. Adding check_playback() everywhere.
. Changing to the new Exception messages.
. New test for partial failure.

Risk: medium
Visibility: medium

Signed-off-by: Jean-Marc Eurin <jmeurin@google.com>



git-svn-id: http://test.kernel.org/svn/autotest/trunk@2525 592f7852-d20e-0410-864c-8624ca9c26a4
/external/autotest/cli/topic_common.py
ecd33662ab1d3894d4ee3a2d682a034d5026d865 27-Nov-2008 mbligh <mbligh@592f7852-d20e-0410-864c-8624ca9c26a4> As atest's --parse option is supposed to output easily parsable data, it is better
not to print 'No results' when no results is returned. Instead, prints nothing.

From: Jean Parpaillon <jean.parpaillon@kerlabs.com>



git-svn-id: http://test.kernel.org/svn/autotest/trunk@2523 592f7852-d20e-0410-864c-8624ca9c26a4
/external/autotest/cli/topic_common.py
11efd23719fc94edb23540240f12969fa1d25367 27-Nov-2008 mbligh <mbligh@592f7852-d20e-0410-864c-8624ca9c26a4> - add the possibility to set AUTOTEST_USER to an other user than the current
one for RPC authentication. For the moment, authentication is not used but in
case of...
- When web server responds but return an error, the command simply failed
without explicitly giving the HTTP code. With this patch, the command prints
the HTTP error and exits.

From: Jean Parpaillon <jean.parpaillon@kerlabs.com>



git-svn-id: http://test.kernel.org/svn/autotest/trunk@2511 592f7852-d20e-0410-864c-8624ca9c26a4
/external/autotest/cli/topic_common.py
df75f8b737431b926c2b895fe404cbf04e8eca9a 18-Nov-2008 mbligh <mbligh@592f7852-d20e-0410-864c-8624ca9c26a4> Add list printing functions.

Signed-off-by: Jean-Marc Eurin <jmeurin@google.com>



git-svn-id: http://test.kernel.org/svn/autotest/trunk@2437 592f7852-d20e-0410-864c-8624ca9c26a4
/external/autotest/cli/topic_common.py
140a23c9251b76cc51455b5594c163dbab4f34e2 29-Oct-2008 mbligh <mbligh@592f7852-d20e-0410-864c-8624ca9c26a4> Added display of experimental (and all) tests.

Risk: low
Visibility: low

Signed-off-by: Jean-Marc Eurin <jmeurin@google.com>



git-svn-id: http://test.kernel.org/svn/autotest/trunk@2357 592f7852-d20e-0410-864c-8624ca9c26a4
/external/autotest/cli/topic_common.py
21baa459ea14f96e06212f1f35fcddab9442b3fc 21-Oct-2008 showard <showard@592f7852-d20e-0410-864c-8624ca9c26a4> Add options to control reboots before and after a job.

-add reboot_before and reboot_after fields to Job, along with enums for each
-add options to create_job RPC for reboot_before and reboot_after
-add options to job create CLI for these fields, and made job stat -v display them
-add widgets to job create page in AFE for these fields and made job detail view display them

-add dirty field to Hosts, defaulting to True, and set to True when a host is locked
-made scheduler set this field when a job runs and clear it when a host is rebooted

-updated scheduler's PidfileRunMonitor to read a new three-line .autoserv_execute format, where the third line contains the number of tests that failed
-made scheduler Job.run() include a RebootTask before the verify task according to the reboot_before option
-made QueueTask.epilog() launch a RebootTask for each host according to the reboot_after option

-updated autoserv to write out a third line to .autoserv_execute containing the number of failed tests.

Other changes:
-added support for displaying Job.run_verify in the CLI (job stat -v) and job detail page on AFE
-updated ModelExtensions to convert BooleanField values to actual booleans. The MySQL Django backend just leaves them as ints (as they are represented in the DB), and it's stupid and annoying (Yes, bool is a subclass of int, so it's often not a problem. But yes, it can be.).
-get rid of use of Job.synch_count since we don't actually support it. I think this was meant for inclusion in a previous change and got left out.
-made the scheduler use the new setup_django_environment stuff to import and use the django models. It doesn't *really* use the models yet -- it just uses the Job.Reboot{Before,After} enum objects -- but this shows we could easily start using the models, and that's definitely the direction I want to go long term.
-refactored PidfileRunMonitor generally and made it a bit more robust by having it email errors for corrupt pidfiles and continue gracefully, instead of just crashing the scheduler
-changed the way Agent.tick() works. now, it basically runs through as much work as it can in a single call. for example, if there's a RebootTask and a VerifyTask, and the RebootTask has just finished, in a single call it will finish up the RebootTask and start the VerifyTask. this used to take two cycles and that was problematic for cases like this one -- the RebootTask would like to set host.status=Ready, but then the host could get snatched up on the next scheduling round, before the VerifyTask got started. This was sort of solved previously by keeping the HostQueueEntry active, and we could apply that approach here by making a new status for HostQueueEntries like "Rebooting". But I prefer this approach as I think it's more efficient, more powerful and easier to work with.

Risk: extremely high
Visibility: new reboot options for jobs, skip verify now displayed in AFE + CLI

Signed-off-by: Steve Howard <showard@google.com>


git-svn-id: http://test.kernel.org/svn/autotest/trunk@2308 592f7852-d20e-0410-864c-8624ca9c26a4
/external/autotest/cli/topic_common.py
e163b03a27fea8a33f6ca5f77c7e58a5bb37f7f3 18-Oct-2008 mbligh <mbligh@592f7852-d20e-0410-864c-8624ca9c26a4> - Expose the lock_time and protection fields in host stat.
- Allow users to set the protection level through the CLI.
Risk(Low): Changes affect host_stat and host_mod. Verified working.
Visibility(Medium): Users will notice new functionality in the CLI

Signed-off-by: Ryan Kubiak <rkubiak@google.com>



git-svn-id: http://test.kernel.org/svn/autotest/trunk@2303 592f7852-d20e-0410-864c-8624ca9c26a4
/external/autotest/cli/topic_common.py
989f25dcbb6361218f0f84d1c8404761b4c39d96 01-Oct-2008 showard <showard@592f7852-d20e-0410-864c-8624ca9c26a4> two new major features:

(1) added test and job dependencies
-added M2M relationship between tests and labels and between jobs and labels, for tracking the labels on which a test/job depends
-modified test_importer to read the DEPENDENCIES field and create the right M2M relationships
-modified generate_control_file() RPC to compute and return the union of test dependencies. since generate_control_file now returns four pieces of information, i converted its return type from tuple to dict, and changed clients accordingly.
-modified job creation clients (GWT and CLI) to pass this dependency list to the create_job() RPC
-modified the create_job() RPC to check that hosts satisfy job dependencies, and to create M2M relationships
-modified the scheduler to check dependencies when scheduling jobs
-modified JobDetailView to show a job's dependencies

(2) added "only_if_needed" bit to labels; if true, a machine with this label can only be used if the label is requested (either by job dependencies or by the metahost label)
-added boolean field to Labels
-modified CLI label creation/viewing to support this new field
-made create_job() RPC and scheduler check for hosts with such a label that was not requested, and reject such hosts

also did some slight refactoring of other code in create_job() to simplify it while I was changing things there.

a couple notes:
-an only_if_needed label can be used if either the job depends on the label or it's a metahost for that label. we assume that if the user specifically requests the label in a metahost, then it's OK, even if the job doesn't depend on that label.
-one-time-hosts are assumed to satisfy job dependencies.

Signed-off-by: Steve Howard <showard@google.com>


git-svn-id: http://test.kernel.org/svn/autotest/trunk@2215 592f7852-d20e-0410-864c-8624ca9c26a4
/external/autotest/cli/topic_common.py
f1733346cc8a36fd419cadd76c91758e36860fae 04-Sep-2008 mbligh <mbligh@592f7852-d20e-0410-864c-8624ca9c26a4> Allow ', ' as a separator for the lists & files as this is the output format.
Allow a line finishing by ', ', ' ,' and ',' in the file.

Visibility: low
Risk: low

Signed-off-by: Jean-Marc Eurin <jmeurin@google.com>



git-svn-id: http://test.kernel.org/svn/autotest/trunk@2101 592f7852-d20e-0410-864c-8624ca9c26a4
/external/autotest/cli/topic_common.py
76dced84ee11c1cd1dbfd9fe96d0af06220d10f7 12-Aug-2008 mbligh <mbligh@592f7852-d20e-0410-864c-8624ca9c26a4> Forgot to add the test action in the help string

Signed-off-by: Jean-Marc Eurin <jmeurin@google.com>



git-svn-id: http://test.kernel.org/svn/autotest/trunk@1971 592f7852-d20e-0410-864c-8624ca9c26a4
/external/autotest/cli/topic_common.py
be630eb07ddb84310fcc580acffcaa362a2dc606 01-Aug-2008 mbligh <mbligh@592f7852-d20e-0410-864c-8624ca9c26a4> Attached is the CLI code tarball. It is documented at http://test.kernel.org/autotest/CLIHowTo

From: jmeurin@google.com



git-svn-id: http://test.kernel.org/svn/autotest/trunk@1950 592f7852-d20e-0410-864c-8624ca9c26a4
/external/autotest/cli/topic_common.py