[autotest] Introduce a suite for dangerous tests, and add tests to it.

This list was formed by walking through a week's of machine killers, and
grabbing all the obvious repeat offenders from the list.  I expect more
will be added over time, but this is a good initial start.

TEST=None
BUG=chromium:314769

Change-Id: I1f3ad1c0fca405548548f0114dd67a1b0b670d04
Reviewed-on: https://chromium-review.googlesource.com/178126
Commit-Queue: Alex Miller <milleral@chromium.org>
Tested-by: Alex Miller <milleral@chromium.org>
Reviewed-by: Dan Shi <dshi@chromium.org>
diff --git a/client/site_tests/power_CheckAfterSuspend/control.per_build b/client/site_tests/power_CheckAfterSuspend/control.per_build
index b226739..06316c2 100644
--- a/client/site_tests/power_CheckAfterSuspend/control.per_build
+++ b/client/site_tests/power_CheckAfterSuspend/control.per_build
@@ -4,7 +4,7 @@
 
 AUTHOR = "The Chromium OS Authors"
 NAME = "power_CheckAfterSuspend"
-SUITE = "kernel_per-build_regression"
+SUITE = "jailed_build"
 PURPOSE = "Check of the system state after S3"
 CRITERIA = "Check that the system is in the expected state after S3 Resume."
 TIME = "SHORT"
diff --git a/client/site_tests/power_KernelSuspend/control b/client/site_tests/power_KernelSuspend/control
index ae752a1..fe07c5a 100644
--- a/client/site_tests/power_KernelSuspend/control
+++ b/client/site_tests/power_KernelSuspend/control
@@ -6,7 +6,7 @@
 
 AUTHOR = "Chrome OS Team"
 NAME = "power_KernelSuspend"
-SUITE = "kernel_per-build_regression"
+SUITE = "jailed_build"
 TIME = "SHORT"
 TEST_CATEGORY = "Functional"
 TEST_CLASS = "power"
diff --git a/client/site_tests/power_MemorySuspend/control b/client/site_tests/power_MemorySuspend/control
index 6bbfeb4..9f0c2b2 100644
--- a/client/site_tests/power_MemorySuspend/control
+++ b/client/site_tests/power_MemorySuspend/control
@@ -4,7 +4,7 @@
 
 AUTHOR = "jwerner, chromeos-power"
 NAME = "power_MemorySuspend"
-SUITE = "kernel_per-build_regression"
+SUITE = "jailed_build"
 TIME = "FAST"
 TEST_CATEGORY = "Regression"
 TEST_CLASS = "power"
diff --git a/client/site_tests/power_SuspendStress/control.audioPerBuild b/client/site_tests/power_SuspendStress/control.audioPerBuild
index b54cafc..9dbe19b 100644
--- a/client/site_tests/power_SuspendStress/control.audioPerBuild
+++ b/client/site_tests/power_SuspendStress/control.audioPerBuild
@@ -4,7 +4,7 @@
 
 AUTHOR = "jwerner, chromeos-power, truty"
 NAME = "power_SuspendStress.audioPerBuild"
-SUITE = "kernel_per-build_regression"
+SUITE = "jailed_build"
 PURPOSE = "Run repeated iterations of suspend/resume while rendering audio."
 TIME = "SHORT"
 TEST_CATEGORY = "Functional"
diff --git a/client/site_tests/power_SuspendStress/control.bareDaily b/client/site_tests/power_SuspendStress/control.bareDaily
index 6cc42ec..6c700ea 100644
--- a/client/site_tests/power_SuspendStress/control.bareDaily
+++ b/client/site_tests/power_SuspendStress/control.bareDaily
@@ -4,7 +4,7 @@
 
 AUTHOR = "jwerner, chromeos-power"
 NAME = "power_SuspendStress.bareDaily"
-SUITE = "kernel_daily_regression"
+#SUITE = "jailed_daily"
 PURPOSE = "Run repeated iterations of suspend/resume to find rare errors."
 TIME = "LENGTHY"
 TEST_CATEGORY = "Functional"
diff --git a/client/site_tests/power_SuspendStress/control.barePerBuild b/client/site_tests/power_SuspendStress/control.barePerBuild
index 9792e29..843dbbf 100644
--- a/client/site_tests/power_SuspendStress/control.barePerBuild
+++ b/client/site_tests/power_SuspendStress/control.barePerBuild
@@ -4,7 +4,7 @@
 
 AUTHOR = "jwerner, chromeos-power"
 NAME = "power_SuspendStress.barePerBuild"
-SUITE = "kernel_per-build_regression"
+SUITE = "jailed_build"
 PURPOSE = "Run repeated iterations of suspend/resume to find rare errors."
 TIME = "SHORT"
 TEST_CATEGORY = "Functional"
diff --git a/client/site_tests/power_SuspendStress/control.diskDaily b/client/site_tests/power_SuspendStress/control.diskDaily
index 067a1da..67d45db 100644
--- a/client/site_tests/power_SuspendStress/control.diskDaily
+++ b/client/site_tests/power_SuspendStress/control.diskDaily
@@ -4,7 +4,7 @@
 
 AUTHOR = "jwerner, chromeos-power"
 NAME = "power_SuspendStress.diskDaily"
-SUITE = "kernel_daily_regression"
+#SUITE = "jailed_daily"
 PURPOSE = "Run repeated iterations of suspend/resume while stressing the disk."
 TIME = "LENGTHY"
 TEST_CATEGORY = "Functional"
diff --git a/client/site_tests/power_SuspendStress/control.diskPerBuild b/client/site_tests/power_SuspendStress/control.diskPerBuild
index 17e2ec9..5e8de12 100644
--- a/client/site_tests/power_SuspendStress/control.diskPerBuild
+++ b/client/site_tests/power_SuspendStress/control.diskPerBuild
@@ -4,7 +4,7 @@
 
 AUTHOR = "jwerner, chromeos-power"
 NAME = "power_SuspendStress.diskPerBuild"
-SUITE = "kernel_per-build_regression"
+SUITE = "jailed_build"
 PURPOSE = "Run repeated iterations of suspend/resume while stressing the disk."
 TIME = "SHORT"
 TEST_CATEGORY = "Functional"
diff --git a/client/site_tests/power_SuspendStress/control.idleDaily b/client/site_tests/power_SuspendStress/control.idleDaily
index 84b964c..b993f3e 100644
--- a/client/site_tests/power_SuspendStress/control.idleDaily
+++ b/client/site_tests/power_SuspendStress/control.idleDaily
@@ -4,7 +4,7 @@
 
 AUTHOR = "jwerner, chromeos-power"
 NAME = "power_SuspendStress.idleDaily"
-SUITE = "kernel_daily_regression"
+#SUITE = "jailed_daily"
 PURPOSE = "Run repeated iterations of idle-suspend."
 TIME = "LENGTHY"
 TEST_CATEGORY = "Functional"
diff --git a/client/site_tests/power_SuspendStress/control.idlePerBuild b/client/site_tests/power_SuspendStress/control.idlePerBuild
index ea813ef..d85790a 100644
--- a/client/site_tests/power_SuspendStress/control.idlePerBuild
+++ b/client/site_tests/power_SuspendStress/control.idlePerBuild
@@ -4,7 +4,7 @@
 
 AUTHOR = "jwerner, chromeos-power"
 NAME = "power_SuspendStress.idlePerBuild"
-SUITE = "kernel_per-build_regression"
+SUITE = "jailed_build"
 PURPOSE = "Run repeated iterations of idle-suspend."
 TIME = "SHORT"
 TEST_CATEGORY = "Functional"
diff --git a/client/site_tests/power_SuspendStress/control.videoDaily b/client/site_tests/power_SuspendStress/control.videoDaily
index cb3c0d7..70e9eac 100644
--- a/client/site_tests/power_SuspendStress/control.videoDaily
+++ b/client/site_tests/power_SuspendStress/control.videoDaily
@@ -4,7 +4,7 @@
 
 AUTHOR = "jwerner, chromeos-power"
 NAME = "power_SuspendStress.videoDaily"
-#SUITE = "kernel_daily_regression"
+#SUITE = "jailed_daily"
 PURPOSE = "Run repeated iterations of suspend/resume while rendering a video."
 TIME = "LENGTHY"
 TEST_CATEGORY = "Functional"
diff --git a/client/site_tests/power_SuspendStress/control.videoPerBuild b/client/site_tests/power_SuspendStress/control.videoPerBuild
index e7011f4..24bd620 100644
--- a/client/site_tests/power_SuspendStress/control.videoPerBuild
+++ b/client/site_tests/power_SuspendStress/control.videoPerBuild
@@ -4,7 +4,7 @@
 
 AUTHOR = "jwerner, chromeos-power"
 NAME = "power_SuspendStress.videoPerBuild"
-#SUITE = "kernel_per-build_regression"
+#SUITE = "jailed_build"
 PURPOSE = "Run repeated iterations of suspend/resume while rendering a video."
 TIME = "SHORT"
 TEST_CATEGORY = "Functional"
diff --git a/server/site_tests/platform_KernelErrorPaths/control b/server/site_tests/platform_KernelErrorPaths/control
index 7cb15ff..ae69391 100644
--- a/server/site_tests/platform_KernelErrorPaths/control
+++ b/server/site_tests/platform_KernelErrorPaths/control
@@ -4,7 +4,7 @@
 
 NAME = "KernelErrorPaths"
 AUTHOR = "Chrome OS Team"
-SUITE = "kernel_daily_regression"
+SUITE = "jailed_daily"
 TIME = "SHORT"
 TEST_CATEGORY = "Functional"
 TEST_CLASS = "platform"
diff --git a/test_suites/control.jailed_build b/test_suites/control.jailed_build
new file mode 100644
index 0000000..fc2e855
--- /dev/null
+++ b/test_suites/control.jailed_build
@@ -0,0 +1,40 @@
+# Copyright (c) 2013 The Chromium OS Authors. All rights reserved.
+# Use of this source code is governed by a BSD-style license that can be
+# found in the LICENSE file.
+
+AUTHOR = "Chrome OS Team"
+NAME = "jailed_build"
+PURPOSE = "Quartine potentially dangerous tests."
+CRITERIA = "All tests with SUITE=jailed_build must pass."
+
+TIME = "SHORT"
+TEST_CATEGORY = "General"
+TEST_CLASS = "suite"
+TEST_TYPE = "Server"
+
+DOC = """
+This is the suite of tests that are recognized as sometimes leaving a
+machine in an unresponsive state.  These tests are run on a restricted
+set of devices, and results for these tests should be considered "best
+effort".
+
+@param build: The name of the image to test.
+              Ex: x86-mario-release/R17-1412.33.0-a1-b29
+@param board: The board to test on. Ex: x86-mario
+@param pool: The pool of machines to utilize for scheduling. If pool=None
+             board is used.
+@param check_hosts: require appropriate live hosts to exist in the lab.
+@param SKIP_IMAGE: (optional) If present and True, don't re-image devices.
+"""
+
+import common
+from autotest_lib.server.cros import provision
+from autotest_lib.server.cros.dynamic_suite import dynamic_suite
+
+
+dynamic_suite.reimage_and_run(
+    build=build, board=board, name=NAME, job=job, pool=pool,
+    check_hosts=check_hosts, add_experimental=True, num=num,
+    file_bugs=file_bugs, priority=priority,
+    timeout_mins=timeout_mins, bug_template=_BUG_TEMPLATE,
+    devserver_url=devserver_url, version_prefix=provision.CROS_VERSION_PREFIX)
diff --git a/test_suites/control.jailed_daily b/test_suites/control.jailed_daily
new file mode 100644
index 0000000..783f22d
--- /dev/null
+++ b/test_suites/control.jailed_daily
@@ -0,0 +1,40 @@
+# Copyright (c) 2013 The Chromium OS Authors. All rights reserved.
+# Use of this source code is governed by a BSD-style license that can be
+# found in the LICENSE file.
+
+AUTHOR = "Chrome OS Team"
+NAME = "jailed_daily"
+PURPOSE = "Quartine potentially dangerous tests."
+CRITERIA = "All tests with SUITE=jailed_daily must pass."
+
+TIME = "SHORT"
+TEST_CATEGORY = "General"
+TEST_CLASS = "suite"
+TEST_TYPE = "Server"
+
+DOC = """
+This is the suite of tests that are recognized as sometimes leaving a
+machine in an unresponsive state.  These tests are run on a restricted
+set of devices, and results for these tests should be considered "best
+effort".
+
+@param build: The name of the image to test.
+              Ex: x86-mario-release/R17-1412.33.0-a1-b29
+@param board: The board to test on. Ex: x86-mario
+@param pool: The pool of machines to utilize for scheduling. If pool=None
+             board is used.
+@param check_hosts: require appropriate live hosts to exist in the lab.
+@param SKIP_IMAGE: (optional) If present and True, don't re-image devices.
+"""
+
+import common
+from autotest_lib.server.cros import provision
+from autotest_lib.server.cros.dynamic_suite import dynamic_suite
+
+
+dynamic_suite.reimage_and_run(
+    build=build, board=board, name=NAME, job=job, pool=pool,
+    check_hosts=check_hosts, add_experimental=True, num=num,
+    file_bugs=file_bugs, priority=priority,
+    timeout_mins=timeout_mins, bug_template=_BUG_TEMPLATE,
+    devserver_url=devserver_url, version_prefix=provision.CROS_VERSION_PREFIX)
diff --git a/test_suites/control.jailed_weekly b/test_suites/control.jailed_weekly
new file mode 100644
index 0000000..7b4df73
--- /dev/null
+++ b/test_suites/control.jailed_weekly
@@ -0,0 +1,40 @@
+# Copyright (c) 2013 The Chromium OS Authors. All rights reserved.
+# Use of this source code is governed by a BSD-style license that can be
+# found in the LICENSE file.
+
+AUTHOR = "Chrome OS Team"
+NAME = "jailed_weekly"
+PURPOSE = "Quartine potentially dangerous tests."
+CRITERIA = "All tests with SUITE=jailed_weekly must pass."
+
+TIME = "SHORT"
+TEST_CATEGORY = "General"
+TEST_CLASS = "suite"
+TEST_TYPE = "Server"
+
+DOC = """
+This is the suite of tests that are recognized as sometimes leaving a
+machine in an unresponsive state.  These tests are run on a restricted
+set of devices, and results for these tests should be considered "best
+effort".
+
+@param build: The name of the image to test.
+              Ex: x86-mario-release/R17-1412.33.0-a1-b29
+@param board: The board to test on. Ex: x86-mario
+@param pool: The pool of machines to utilize for scheduling. If pool=None
+             board is used.
+@param check_hosts: require appropriate live hosts to exist in the lab.
+@param SKIP_IMAGE: (optional) If present and True, don't re-image devices.
+"""
+
+import common
+from autotest_lib.server.cros import provision
+from autotest_lib.server.cros.dynamic_suite import dynamic_suite
+
+
+dynamic_suite.reimage_and_run(
+    build=build, board=board, name=NAME, job=job, pool=pool,
+    check_hosts=check_hosts, add_experimental=True, num=num,
+    file_bugs=file_bugs, priority=priority,
+    timeout_mins=timeout_mins, bug_template=_BUG_TEMPLATE,
+    devserver_url=devserver_url, version_prefix=provision.CROS_VERSION_PREFIX)