• Home
  • History
  • Annotate
  • only in /external/autotest/site_utils/autoupdate/
History log of /external/autotest/site_utils/autoupdate/
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
28bd51debede2f3d7a4fce2d1270cda73276143d 02-Oct-2015 Gilad Arnold <garnold@chromium.org> autoupdate_EndToEnd: Bugfix following removal of servo support.

In CL:302872 we renamed a test parameter (source_image_uri ->
source_payload_uri) but neglected to mirror it in the test config
generator (TestConfig). This should fix it.

CQ-DEPEND=CL:303960
BUG=b:24405484
TEST=None

Change-Id: I98ad1695ff65b17ce12a6dba042a330f5dd78947
Reviewed-on: https://chromium-review.googlesource.com/303746
Commit-Ready: Gilad Arnold <garnold@chromium.org>
Tested-by: Gilad Arnold <garnold@chromium.org>
Reviewed-by: Simran Basi <sbasi@chromium.org>
ib/test_params.py
aa712a5d271a60b126beb2260b27bf5573304639 29-Sep-2015 Gilad Arnold <garnold@chromium.org> autoupdate_EndToEnd: Remove servo support, part 2.

This completes the removal of servo support and should only get merged
after part 1 was pushed to prod.

* Remove servo parameters from the control file.

* Remove servo arg processing from
site_utils.autoupdate.lib.test_params.TestEnv.

* Remove servo support in the full_release_test script.

BUG=b:24405484
TEST=None

Change-Id: Ib60c5eab740389e2b3591329a7dfda142e8091c0
Reviewed-on: https://chromium-review.googlesource.com/302872
Commit-Ready: Gilad Arnold <garnold@chromium.org>
Tested-by: Gilad Arnold <garnold@chromium.org>
Reviewed-by: Simran Basi <sbasi@chromium.org>
ull_release_test.py
ib/test_params.py
63281b522478b96b1cb30fd163d7d0558040afbf 27-Sep-2015 Gilad Arnold <garnold@chromium.org> Revert "autoupdate_EndToEnd: Remove servo support."

This reverts commit 5e8b84abb56c1e258f7c08dcc72a6faa549814b8.

Change in the number of arguments passed to the test from the control file doesn't seem to be reflected in the test code. Deployment gap?

BUG=b:24405484
TEST=None

Change-Id: I3ec6ca35834f9876052ef75bd15b57b85133f7d5
Reviewed-on: https://chromium-review.googlesource.com/302695
Reviewed-by: Gilad Arnold <garnold@chromium.org>
Tested-by: Gilad Arnold <garnold@chromium.org>
ull_release_test.py
ib/test_params.py
5e8b84abb56c1e258f7c08dcc72a6faa549814b8 24-Sep-2015 Gilad Arnold <garnold@chromium.org> autoupdate_EndToEnd: Remove servo support.

We don't expect to ever be using this so deprecating the code. This
includes:

* Remove servo parameters from the test and control file.

* Remove servo arg processing from
site_utils.autoupdate.lib.test_params.TestEnv.

* Remove servo support in the full_release_test script.

BUG=b:24405484
TEST=None

Change-Id: I2e6d2de45faaa86cd41a1c185804e830507328aa
Reviewed-on: https://chromium-review.googlesource.com/302542
Commit-Ready: Gilad Arnold <garnold@chromium.org>
Tested-by: Gilad Arnold <garnold@chromium.org>
Reviewed-by: Alex Deymo <deymo@chromium.org>
ull_release_test.py
ib/test_params.py
eb300ac8af429e51f751b95ce375636fbb649e37 24-Sep-2015 Gilad Arnold <garnold@chromium.org> autoupdate_EndToEnd: Remove support for MP-signed images.

This feature was long abandoned and the corresponding machinery on the
update engine deprecated. This includes:

* Removing the image_type parameter from the test and control files.

* Removing an argument from
site_utils.autoupdate.lib.test_params.TestConfig.

* Removing MP-sign images support in the full_release_test script.

CQ-DEPEND=CL:302544
BUG=b:24404980
TEST=paygen_build_lib_unittest (with corresponding change).

Change-Id: If364fe9eff20215248022b358aaabf118362cec6
Reviewed-on: https://chromium-review.googlesource.com/302541
Commit-Ready: Gilad Arnold <garnold@chromium.org>
Tested-by: Gilad Arnold <garnold@chromium.org>
Reviewed-by: Chris Sosa <sosa@chromium.org>
ull_release_test.py
ib/test_params.py
fea7e766e59f8356dad6f70e46c0ee25997863a5 22-Sep-2015 Gilad Arnold <garnold@chromium.org> autoupdate_EndToEnd: Make source image URI optional.

This test normally installs a source image (often using another full
payload) prior to testing an update to the target version. In the Brillo
case, we anticipate that DUTs will be provisioned with the source image
version in advance and no source image will be provided.

This change may also come handy in other situations where updating to
the source image is unnecessary.

CQ-DEPEND=CL:301466
BUG=b:24158510
TEST=paygen_build_lib_unittest (TestConfig change only)

Change-Id: Id356cbab66016fc925acbaa0b386c519909e9ad9
Reviewed-on: https://chromium-review.googlesource.com/300686
Commit-Ready: Gilad Arnold <garnold@chromium.org>
Tested-by: Gilad Arnold <garnold@chromium.org>
Reviewed-by: Dan Shi <dshi@chromium.org>
ib/test_params.py
2c4ce07ee5e885b7da219ac0204786f1e428a9d9 26-Jun-2015 Don Garrett <dgarrett@google.com> full_release_test: Stop importing cbuildbot_config.

full_release_test was importing cbuildbot_config so that it could
get a full list of all boards that exist in our build config. Since
we're trying to stop hardcoding the config, this was problematic.

Remove the "--all_boards" command line option. It doesn't appear to be
used automatically, and I'm pretty sure it's no longer a sane thing to
do.

Remove validation that all boards listed on the command line are real,
and just let errors happen. Since we mostly only call this
automatically, this isn't much of an issue.

Also redo tests to match.

BUG=chromium:483566
TEST=Unittests.

Change-Id: I639caa2a56e55fe9aff8ae1e3e8a788aa2906b8f
Reviewed-on: https://chromium-review.googlesource.com/282068
Trybot-Ready: Don Garrett <dgarrett@chromium.org>
Tested-by: Don Garrett <dgarrett@chromium.org>
Reviewed-by: Dan Shi <dshi@chromium.org>
Commit-Queue: Don Garrett <dgarrett@chromium.org>
ull_release_test.py
ull_release_test_test.py
f1690780b1b1baca37703b4ee15b62eff34a3b08 15-May-2015 Christopher Wiley <wiley@chromium.org> Remove option to run autotest tests locally

This flow depends on run_remote_tests.sh which is deprecated.

BUG=brillo:1067
TEST=None

Change-Id: Iedb98d34700d4377afa2e3304552057e7ee76b12
Reviewed-on: https://chromium-review.googlesource.com/271552
Tested-by: Christopher Wiley <wiley@chromium.org>
Reviewed-by: Chris Sosa <sosa@chromium.org>
Commit-Queue: Christopher Wiley <wiley@chromium.org>
ull_release_test.py
52113d9f28ffa033ef5574bc0a4742a977ac3ba9 06-May-2015 Don Garrett <dgarrett@google.com> full_release_test: Switch to cbuildbot_config.GetConfig().

cbuildbot_config is changing the API it exports. Change with it.

TEST=precq
BUG=chromium:483566
CQ-DEPEND=CL:269770

Change-Id: I73f29efd63efa5ee1d92b12a8368ab98d9a9ba77
Reviewed-on: https://chromium-review.googlesource.com/269775
Tested-by: Don Garrett <dgarrett@chromium.org>
Reviewed-by: Prathmesh Prabhu <pprabhu@chromium.org>
Commit-Queue: Don Garrett <dgarrett@chromium.org>
Trybot-Ready: Don Garrett <dgarrett@chromium.org>
ull_release_test.py
34c908239317a5041b69346d4720b23cf81117a7 16-Dec-2014 Gaurav Shah <gauravsh@chromium.org> full_release_test.py: Handle delta payload file names on non-release builds

Non-release builds have a date fragment in the version file name. Handle
it as well.

This change was previously reviewed on https://chromium-review.googlesource.com/236675 ,
landed and reverted. This patch includes a fix for the case where the
source and target version are the same (npo) in release builds.

BUG=chromium:425404
BUG=chromium:390828
TEST=New unit test
TEST=Manual test (see below)

Manual test:
* Regression test on release builds:
$ site_utils/autoupdate/full_release_test.py --npo --nmo --dump --dump_dir /tmp/au_test --archive_url gs://chromeos-image-archive/swanky-release/R41-6630.0.0 6630.0.0 swanky '--log=debug' --dry_run
This command generates a control file in /tmp/au_test with no
differences in the uris when comparing it with the one stored in
gs://chromeos-image-archive/swanky-release/R41-6630.0.0/au_control.tar.bz2
which was green. This fixes the regression introduced in CL:236675
(already reverted) where the source_image_uri was missing the full
payload filename.

* Trybot test:
Ran a lumpy-release trybot with --hwtest enabled, that uploaded the
build artifacts to
gs://chromeos-image-archive/trybot-lumpy-release/R43-6831.0.0-b2425
where the version will include the '-a1' suffix in the payloads.
Ran the same command using the trybot urls and checked the generated
source_image_uri variable in the control file has the right full payload
(found in the same artifacts directory):
$ site_utils/autoupdate/full_release_test.py --npo --nmo --dump --dump_dir /tmp/au_test --archive_url gs://chromeos-image-archive/trybot-lumpy-release/R43-6831.0.0-b2425 6831.0.0-a1 lumpy '--log=debug' --dry_run

Change-Id: I2ed839f16883130b5601701e99ebf76fad589312
Reviewed-on: https://chromium-review.googlesource.com/254860
Tested-by: Alex Deymo <deymo@chromium.org>
Reviewed-by: Gaurav Shah <gauravsh@chromium.org>
Commit-Queue: Alex Deymo <deymo@chromium.org>
ull_release_test.py
ull_release_test_test.py
830a55e02a3b41ad85e70b19c473e882ab604797 29-Dec-2014 Chris Sosa <sosa@chromium.org> Revert "full_release_test.py: Handle delta payload file names on non-release builds"

This reverts commit 9604b2ae01aec7c0243bbd8b208cd8d18797f5a7.

Change-Id: I33c574484b89b044c370ba010945e02b281c3e26
Reviewed-on: https://chromium-review.googlesource.com/237930
Reviewed-by: Chris Sosa <sosa@chromium.org>
Tested-by: Chris Sosa <sosa@chromium.org>
ull_release_test.py
ull_release_test_test.py
9604b2ae01aec7c0243bbd8b208cd8d18797f5a7 16-Dec-2014 Gaurav Shah <gauravsh@chromium.org> full_release_test.py: Handle delta payload file names on non-release builds

Non-release builds have a date fragment in the version file name. Handle
it as well.

Also fix assumptions about the source_uri for npo full updates.
Specifically, use the target version to find the full update
payload when source and targets are the same. This ensures the
logic correctly handles developer build version names (with the date).

BUG=chromium:425404
BUG=chromium:390828
TEST=New unit test
TEST=trybots on storm-release, storm-paladin, lumpy-release, lumpy-paladin

Change-Id: I3f5f454702269a93020d266eebc917966ea79ce8
Reviewed-on: https://chromium-review.googlesource.com/236675
Reviewed-by: Chris Sosa <sosa@chromium.org>
Commit-Queue: Gaurav Shah <gauravsh@chromium.org>
Tested-by: Gaurav Shah <gauravsh@chromium.org>
ull_release_test.py
ull_release_test_test.py
5a417084ed5637ceeb4b6efb0b33871ed4b0fdcc 09-Dec-2014 Gaurav Shah <gauravsh@chromium.org> full_release_test.py: Sanity checking board against all known chromite configs

The current logic restricts itself to only those boards that have
hw_tests enabled. This isn't necessary as we may want to generate AU
test artifacts even for boards not currently being hw tested.

BUG=chromium:425404
TEST=unit test

Change-Id: Icdd383e44042b922d887944c5af1cf217065f679
Reviewed-on: https://chromium-review.googlesource.com/234849
Reviewed-by: Alex Deymo <deymo@chromium.org>
Reviewed-by: Chris Sosa <sosa@chromium.org>
Tested-by: Gaurav Shah <gauravsh@chromium.org>
Commit-Queue: Gaurav Shah <gauravsh@chromium.org>
ull_release_test.py
ull_release_test_test.py
4f739ac1e73a3db090ec317fb037cce8f005e233 16-May-2014 Don Garrett <dgarrett@google.com> Rename chromite.buildbot -> chromite.cbuildbot.

BUG=None
TEST=None
CQ-DEPEND=CL:199664

Change-Id: Ib774c8fb588cbac4cf6af7189133b2a9859c859c
Reviewed-on: https://chromium-review.googlesource.com/200165
Reviewed-by: Don Garrett <dgarrett@chromium.org>
Commit-Queue: Don Garrett <dgarrett@chromium.org>
Tested-by: Don Garrett <dgarrett@chromium.org>
ull_release_test.py
04be2bd5e4666a5c253e9c30ab20555e04286032 08-May-2014 Ilja H. Friedel <ihf@chromium.org> Autotest: Change logging.warn() to logging.warning().

logging.warn() is deprecated. See
http://bugs.python.org/issue13235

Substitution was performed via
~/cros/src/third_party/autotest/files$ find ./ -type f | xargs sed -i 's/logging.warn(/logging.warning(/'

BUG=None.
TEST=There should be one-- and preferably only one --obvious way to do it.

Change-Id: Ie5665743121a49f7fbd5d1f47896a7c65e87e489
Reviewed-on: https://chromium-review.googlesource.com/198793
Commit-Queue: Ilja Friedel <ihf@chromium.org>
Tested-by: Ilja Friedel <ihf@chromium.org>
Reviewed-by: Alex Miller <milleral@chromium.org>
ull_release_test.py
7e04fa8cf1f07512f52870cf4bffd9f8b0801088 26-Jul-2013 Dan Shi <dshi@chromium.org> [autotest] Create a suite for testing push to prod

Add suite push_to_prod for cbf run.
Add a tool, site_utils/test_push.py, used to test if code is ready to push.

BUG=chromium:263928,285453
TEST=unit test
Test with a trybot build: trybot-stumpy-release/R35-5526.0.0-b373
AU part is verified with latest stumpy canary build.

Change-Id: Ia221f0a1aa0f1687daab5d8a20307435baa6bdfc
Reviewed-on: https://chromium-review.googlesource.com/66460
Reviewed-by: Dan Shi <dshi@chromium.org>
Commit-Queue: Dan Shi <dshi@chromium.org>
Tested-by: Dan Shi <dshi@chromium.org>
ib/test_params.py
2cfcfdbab21d848c1e35b7554173b7a43d4a7e93 14-Feb-2014 Chris Sosa <sosa@chromium.org> Try to import module first and only use build_externals import as a backup.

BUG=chromium:342644
TEST=Tested with/without module in path.

Change-Id: Ie12ba46c89f1c78d63664f5957c40d52416309c1
Reviewed-on: https://chromium-review.googlesource.com/186469
Tested-by: Chris Sosa <sosa@chromium.org>
Reviewed-by: Prashanth B <beeps@chromium.org>
Commit-Queue: Chris Sosa <sosa@chromium.org>
mport_common.py
e1417e13e50201ae82cc82652bc290218662cdd9 30-Oct-2013 Gilad Arnold <garnold@chromium.org> autotest: extend AU test name to include delta/full

This is needed since we are now starting to test full test payloads from
paygen, in addition to delta ones. Without it, we'll be causing name
collisions (control file names, Autotest job names).

BUG=chromium:303963
TEST=Unique test name includes delta/full qualifier.

Change-Id: I66c44436ab3be865786155be5fe95053ce0e60ca
Reviewed-on: https://chromium-review.googlesource.com/175159
Reviewed-by: Gilad Arnold <garnold@chromium.org>
Commit-Queue: Gilad Arnold <garnold@chromium.org>
Tested-by: Gilad Arnold <garnold@chromium.org>
ull_release_test_test.py
ib/test_params.py
67dbe59a00e09c5357fd3667487d2ee58dc30993 22-Oct-2013 Chris Sosa <sosa@chromium.org> Get boards dynamically from chromite's cbuildbot_config and remove FSI logic.

This change gives us two less thing to maintain in full_release_test. Instead
of having to add new boards in we dynamically read all boards that are
configured for hwtests from cbuildbot_config. I've gone ahead and added a
sanity test in case anyone changes the interface (i.e. hw_tests to hwtests)
we'll catch it in the CQ / canaries. In addition, we no longer have to worry
about maintaining the FSI logic.

BUG=chromium:309751
TEST=Tests + npo sanity test.

Change-Id: I859fc59bfe0f726167e7f5f1729d65bdb5fab11a
Reviewed-on: https://chromium-review.googlesource.com/174061
Reviewed-by: Chris Sosa <sosa@chromium.org>
Commit-Queue: Chris Sosa <sosa@chromium.org>
Tested-by: Chris Sosa <sosa@chromium.org>
oard.py
oard_config.ini
ull_release_test.py
ull_release_test_test.py
mport_common.py
est_image.py
e8dd167ec9d7f736fb45c9badbf2058702344a8b 21-Oct-2013 Chris Sosa <sosa@chromium.org> Add missing stout32 to board_config.ini

BUG=chromium:309751
TEST=Ran it.

Change-Id: Ia1197e75da3b993a4c3a22fa48da0407e05a01ba
Reviewed-on: https://chromium-review.googlesource.com/173822
Tested-by: Chris Sosa <sosa@chromium.org>
Reviewed-by: Prashanth B <beeps@chromium.org>
Commit-Queue: Chris Sosa <sosa@chromium.org>
oard_config.ini
db6d3ac54392502594a1da38f579cde59cf18db2 11-Oct-2013 Chris Sosa <sosa@chromium.org> Add a decent set of integration tests for full_release_test.py.

I'm checking in a set of integration tests that cover the common workflows
for full_release_test used by test engineers and ourselves when testing
our changes to full_release_test. These are framed as unittests so that
they are run as part of the autotest unittests on every build thus
rejecting a bad change in the CQ from breaking our workflows.

I refrained from mocking anything out except the gsutil call as I expect
that to be stable and wanted to not have any external dependencies. For
the most part I use --dump to actually test the output of the control
files we expect.

Finally adding this to unittests had some crazy import issues. I've resolved
those by force loading devserver using imp.

BUG=chromium:266426
TEST=Ran it separately and as part of utisl/unittest_suite

Change-Id: I63678bfcc397bc058ba745aa5e0219b58f37228f
Reviewed-on: https://chromium-review.googlesource.com/172692
Reviewed-by: Chris Sosa <sosa@chromium.org>
Commit-Queue: Chris Sosa <sosa@chromium.org>
Tested-by: Chris Sosa <sosa@chromium.org>
ull_release_test.py
ull_release_test_test.py
est_image.py
baed3452d46ad0c3d414f203a9dc0e35c7826f6e 09-Oct-2013 Chris Sosa <sosa@chromium.org> Clean up unused code in full_release_test and add branch for R31.

As part of adding tests, I decided to clean up some unnecessary items
adding complexity to the code.

I also noticed R31 was not in board_config.ini (needed for testing so I
added it).

BUG=chromium:266426
TEST=Ran with --specific, --npo, --nmo with --dump and -n separately.
Tests were generated correctly. Also ran pyflakes which warned me
about the unused e variables.

Change-Id: I824110321735053879a2a7952de201ef60c3db66
Reviewed-on: https://chromium-review.googlesource.com/172407
Reviewed-by: Chris Sosa <sosa@chromium.org>
Tested-by: Chris Sosa <sosa@chromium.org>
Reviewed-by: Don Garrett <dgarrett@chromium.org>
Commit-Queue: Chris Sosa <sosa@chromium.org>
oard.py
oard_config.ini
maha.py
elease_config.ini
26c74f0118a664a0ee67edd6095f0b0387e64c7a 01-Oct-2013 Tracy Turchetto <tturchetto@google.com> 1.Removed appid, vendor and hwid. 2. Alphabetically sorted all boards in this file.

BUG=chrome-os-partner:23002
TEST=This is a test.

Change-Id: Ic549f36eb4f8d99ea87b054d71dac872eef83aa9
Reviewed-on: https://chromium-review.googlesource.com/171161
Reviewed-by: Don Garrett <dgarrett@chromium.org>
Reviewed-by: Chris Sosa <sosa@chromium.org>
Commit-Queue: Tracy Turchetto <tturchetto@chromium.org>
Tested-by: Tracy Turchetto <tturchetto@chromium.org>
oard_config.ini
9640226d850b41aa2453e1d359dd18c3ed1232bc 20-Sep-2013 Tracy Turchetto <tturchetto@google.com> 1. Adding new board: peach-pit; 2. Modifing FSI releases version

BUG=chromium:295133
TEST=This is a test

Change-Id: I1efcf1548d12ab38b80fe7865a2359c4906d9b29
Reviewed-on: https://chromium-review.googlesource.com/170090
Reviewed-by: Chris Sosa <sosa@chromium.org>
Reviewed-by: Don Garrett <dgarrett@chromium.org>
Commit-Queue: Tracy Turchetto <tturchetto@chromium.org>
Tested-by: Tracy Turchetto <tturchetto@chromium.org>
oard_config.ini
dc41cfe6cb678d92c63b2607101442de845baaed 08-Sep-2013 Alex Miller <milleral@chromium.org> [AU] Always update the devserver code when importing it.

If there are dependencies where ToT autotest needs something from ToT
devserver, then one needs to make sure that the devserver code is
updated before importing it.

This is doubly important in the context of the builders, as they seem to
clone the devserver code once, and then never update it.

BUG=None
TEST=Ran a full_release_test.py that I copied from AUTest step.
Devserver code was updated.

Change-Id: Iffd1a2dd3561cd75d3d495460619515e011d3547
Reviewed-on: https://chromium-review.googlesource.com/168551
Reviewed-by: Chris Sosa <sosa@chromium.org>
Tested-by: Alex Miller <milleral@chromium.org>
Commit-Queue: Alex Miller <milleral@chromium.org>
est_image.py
728736163fe2ec04c8eb93b27bf4070e5dad1f05 06-Sep-2013 Chris Sosa <sosa@chromium.org> Remove need for single_item when calling GetGSNamesWithWait

BUG=chromium:286453
TEST=Ran it with new devserver code.

Change-Id: I7cb235f16723b7720bdfc4c7019d2d59f34892c7
Reviewed-on: https://chromium-review.googlesource.com/168474
Reviewed-by: Chris Sosa <sosa@chromium.org>
Tested-by: Chris Sosa <sosa@chromium.org>
Commit-Queue: Alex Miller <milleral@chromium.org>
est_image.py
7d658cf6bade565c1098fd7b47075e96e7b542ca 05-Sep-2013 Alex Miller <milleral@chromium.org> [autotest] Thread priority from create_suite_job through to create_job.

This schedules a suite job itself at the same priority level of its
tests, and also injects the priority value into the suite control files.

The change to thread priority through from dynamic_suite into create_job
needs to happen concurrently, because the type of `priority` is changing
from a string to an int. This also means everything that passes in a
priority gets fixed up in this CL.

suite_scheduler has also been tweaked to schedule all tests at the
PostBuild priority (for now...).

This also does all of the work to get priority to show up by name
instead of by integral value. In the create_job pane, we disallow
anyone to schedule a job at a priority that would preempt major build
processes (anything coming from a waterfall). However, all old jobs are
shown at the integral value, because showing two seperate priority
scales at the same time would be incredibly confusing. (Especially
since URGENT would be incredibly low priority)

BUG=chromium:250583
DEPLOY=afe, apache, suite_scheduler
TEST=unit, run_suite with a priority level

Change-Id: I9ecf5ceed5c58bd8ee0815c6d15f4aba300082fe
Reviewed-on: https://chromium-review.googlesource.com/168143
Reviewed-by: Alex Miller <milleral@chromium.org>
Tested-by: Alex Miller <milleral@chromium.org>
Commit-Queue: Alex Miller <milleral@chromium.org>
ull_release_test.py
92562443f60da3c92976f4b54c0e9127cb1dfb92 05-Sep-2013 Chris Sosa <sosa@chromium.org> Add R31 to full_release_test and don't let one missing board muck up all_boards.

BUG=chromium:281595
TEST=Ran it with boards that exist and not. Also tested with R31

Change-Id: I3d3bdd0c6abdbfe4c3ca165b839b3b6a1fafdbcc
Reviewed-on: https://chromium-review.googlesource.com/168221
Reviewed-by: Chris Sosa <sosa@chromium.org>
Tested-by: Chris Sosa <sosa@chromium.org>
ull_release_test.py
elease_config.ini
f5adc4fad84bda70f821f3291e8ce64f0b2b2697 09-Aug-2013 Gilad Arnold <garnold@chromium.org> autotest/autoupdate: add an optional source archive URI to test configs

This is needed for paygen initiated tests.

BUG=chromium:270937
TEST=Used w/ paygen's test generation logic, desired field appears

Change-Id: Ia5404dd491ea9a9c975633ffd792df8ab2dfbff5
Reviewed-on: https://gerrit.chromium.org/gerrit/65348
Tested-by: Gilad Arnold <garnold@chromium.org>
Reviewed-by: Chris Sosa <sosa@chromium.org>
Commit-Queue: Gilad Arnold <garnold@chromium.org>
ib/test_params.py
09e653a91f9cf75886ec1c8131ec185d2a169e2b 09-Aug-2013 Tracy Turchetto <tturchetto@chromium.org> Adding peppy board in board_config.ini

BUG=chromium:271014
TEST=This is a test.

Change-Id: Ibf859039f8a2ab333a7688c1c3d80ac34e7fd9b3
Reviewed-on: https://gerrit.chromium.org/gerrit/65388
Reviewed-by: Chris Sosa <sosa@chromium.org>
Commit-Queue: Tracy Turchetto <tturchetto@google.com>
Tested-by: Tracy Turchetto <tturchetto@google.com>
oard_config.ini
ad8eb56c63b5eb5c1681c274580f41fb3e3ee852 08-Aug-2013 Alex Miller <milleral@chromium.org> [autoupdate] Bump AU tests from Low to Medium priority.

With tests now provisioning themselves, these tests would never
otherwise have a chance to run if we don't put them at the same priority
level as all other tests.

TEST=None
BUG=None

Change-Id: I3c3ea5dc083b3ac8dcff38098ac497b90b4dcd2c
Reviewed-on: https://gerrit.chromium.org/gerrit/65212
Reviewed-by: Chris Sosa <sosa@chromium.org>
Commit-Queue: Alex Miller <milleral@chromium.org>
Tested-by: Alex Miller <milleral@chromium.org>
ull_release_test.py
73c44cb75978fe69afc4727067a5770c03693e39 01-Aug-2013 Gilad Arnold <garnold@chromium.org> autotest: parametrize autoupdate suite name

This allows us to use arbitrary names for differentiating tests. It is
currently needed for autoupdate tests of paygen generated payloads.

BUG=chromium:263133
TEST=Control file generated correctly with both default + custom suite names

Change-Id: Id11532bba54e550b053a625196da466e96f454fe
Reviewed-on: https://gerrit.chromium.org/gerrit/64004
Commit-Queue: Gilad Arnold <garnold@chromium.org>
Reviewed-by: Gilad Arnold <garnold@chromium.org>
Tested-by: Gilad Arnold <garnold@chromium.org>
ib/test_params.py
8128f11c62713b0c36a70a9f5ff908573be34337 29-Jul-2013 Gilad Arnold <garnold@chromium.org> autotest: fix full_release_test runtime error

This happened due to recent restructuring.

BUG=chromium:265572
TEST=Ran w/ debug logging, test name obtained successfully

Change-Id: I5fde89d9cfbb5db40af717ce1b218823eb3a29ca
Reviewed-on: https://gerrit.chromium.org/gerrit/63638
Tested-by: Gilad Arnold <garnold@chromium.org>
Reviewed-by: Chris Sosa <sosa@chromium.org>
Commit-Queue: Gilad Arnold <garnold@chromium.org>
ib/test_params.py
2c86a40dd47cc23f75bd76dd3e555a093dcfa4a8 30-Jul-2013 Tracy Turchetto <tturchetto@chromium.org> Adding Falco board.

BUG=chromium:265948
TEST=This is a test.

Change-Id: I7d61f669ae19c638fab5e69b016d0cd4757fd0e3
Reviewed-on: https://gerrit.chromium.org/gerrit/63751
Reviewed-by: Chris Sosa <sosa@chromium.org>
Commit-Queue: Tracy Turchetto <tturchetto@google.com>
Tested-by: Tracy Turchetto <tturchetto@google.com>
oard_config.ini
47fb1711a41a466fd4a0aec3598696906b92489d 25-Jul-2013 Gilad Arnold <garnold@chromium.org> Make AU autotest logic reusable from paygen

This includes moving logic pertaining to test configuration and control
file generation into separate libraries.

BUG=chromium:263124
TEST=full_release_test still generates test configs, emits control files

Change-Id: Idd7554e10fcd5d2d628e6b43136f3d4017d9d148
Reviewed-on: https://gerrit.chromium.org/gerrit/63306
Commit-Queue: Gilad Arnold <garnold@chromium.org>
Reviewed-by: Gilad Arnold <garnold@chromium.org>
Tested-by: Gilad Arnold <garnold@chromium.org>
ull_release_test.py
ib/__init__.py
ib/common.py
ib/test_control.py
ib/test_params.py
47313935443a9053347cd2fe9448f945a77bcd5d 24-Jul-2013 Gilad Arnold <garnold@chromium.org> AU/autotest: improve code readability

This includes renaming a variable to highlight its scope, relocating
a code block into an else-branch, and eliminating unnecessary
enumeration (for uniformity across cases).

BUG=None
TEST=None

Change-Id: I698e89d0234c1ce01be703536b38a5a116e212c3
Reviewed-on: https://gerrit.chromium.org/gerrit/63159
Reviewed-by: Don Garrett <dgarrett@chromium.org>
Tested-by: Gilad Arnold <garnold@chromium.org>
Commit-Queue: Gilad Arnold <garnold@chromium.org>
ull_release_test.py
ff9d345fb538b293916814690f192d2dfa032673 16-Jul-2013 Chris Sosa <sosa@chromium.org> Fix branch config for R29

BUG=chromium:260382
TEST=Ran on stout with -n (
./full_release_test.py --specific 4319.16.0 --npo 4319.28.0 stout)

Change-Id: I58e59c0a6f7b2c2011f6aa7247bc33dd42713e25
Reviewed-on: https://gerrit.chromium.org/gerrit/62123
Tested-by: Chris Sosa <sosa@chromium.org>
Commit-Queue: Tracy Turchetto <tturchetto@google.com>
Reviewed-by: Tracy Turchetto <tturchetto@google.com>
Reviewed-by: Chris Sosa <sosa@chromium.org>
elease_config.ini
ca0879ee0610869464e33b95c8fbfb11a1d59216 26-Jun-2013 Chris Sosa <sosa@chromium.org> Add R30 branch knowledge to full_release_test.

BUG=chromium:254577
TEST=Ran full_release_test with -n and a new R30 build.

Change-Id: I3b7e2cf858c458b191f9e9574189cbad7f3d2f51
Reviewed-on: https://gerrit.chromium.org/gerrit/60125
Commit-Queue: Chris Sosa <sosa@chromium.org>
Reviewed-by: Chris Sosa <sosa@chromium.org>
Tested-by: Chris Sosa <sosa@chromium.org>
elease_config.ini
aee530c79025fd24c8c28bb21821bed5e4b972dc 26-Jun-2013 Chris Sosa <sosa@chromium.org> Allow AU test suite against daisy_spring.

BUG=chromium:237232
TEST=Ran with --npo and daisy_spring for version 4325.0.0

Change-Id: I7ff6ec455ead0f8738b7cb63126ccc923c9f41fb
Reviewed-on: https://gerrit.chromium.org/gerrit/60110
Reviewed-by: Tracy Turchetto <tturchetto@google.com>
Commit-Queue: Chris Sosa <sosa@chromium.org>
Reviewed-by: Chris Sosa <sosa@chromium.org>
Tested-by: Chris Sosa <sosa@chromium.org>
oard_config.ini
0e5651c81730a4c0b61e2276a1b27350a0db649d 22-May-2013 Chris Sosa <sosa@chromium.org> Revert "[Autotest] correct au test name to comply with run_suite"

This is breaking the AU test suite where autotest can't find the test.

This reverts commit b3748a2f4a87e58572b61dd9ce28d1613bb9a534

Change-Id: Idb8c05f03d00ec4bf448eae240578cc558cd29a3
Reviewed-on: https://gerrit.chromium.org/gerrit/56296
Reviewed-by: Chris Sosa <sosa@chromium.org>
Tested-by: Chris Sosa <sosa@chromium.org>
ull_release_test.py
b3748a2f4a87e58572b61dd9ce28d1613bb9a534 20-May-2013 Dan Shi <dshi@chromium.org> [Autotest] correct au test name to comply with run_suite

run_suite has special use of |.| in test name. If a test name has dot in it,
run_suite will fail to locate its job from keyvals in tko view.
keyvals are keyed by the hash of job name. Based on method run_suite/
get_view_info, the test name is parsed out from view['test_name'] with build
and suite info stripped. And, the job name is parsed out from test name with
the section before first |.|: std_job_name = test_name.split('.')[0]

In another CL (55598), the test name was fixed for generating nmp and npo
control file. However, the same change should be made to the run_test call in
the control file.

BUG=chromium:226147
TEST=tested with run_suite in local machine
DEPLOY=none

Change-Id: Ia221c0fc509d21a5db4cd89d15587ff19c7ba6e2
Reviewed-on: https://gerrit.chromium.org/gerrit/55810
Tested-by: Dan Shi <dshi@chromium.org>
Reviewed-by: Chris Sosa <sosa@chromium.org>
Reviewed-by: Scott Zawalski <scottz@chromium.org>
Commit-Queue: Dan Shi <dshi@chromium.org>
ull_release_test.py
67ea34f00a119bd223aee11750b899b55a24876d 18-May-2013 Chris Sosa <sosa@chromium.org> Restore hack due to build number issues.

Release trybot images may have a -b suffix which confuses the heck
out of full_release_test when finding the source image payload.
I had this in before but removed it when I refactored this code (note
even the comment was leftover).

This code simply says if the version I'm finding the source image for
is a superset of the release, treat the archive_url as the whole
archive_url to find the source payload.

BUG=chromium:240907
TEST=Ran it against trybots, pgo-use and release images.

Change-Id: Icc3f9c344664a6732f297d43774fc6a80942e171
Reviewed-on: https://gerrit.chromium.org/gerrit/55599
Tested-by: Chris Sosa <sosa@chromium.org>
Reviewed-by: Alex Miller <milleral@chromium.org>
Commit-Queue: Chris Sosa <sosa@chromium.org>
Reviewed-by: Chris Sosa <sosa@chromium.org>
ull_release_test.py
993661bf69f2052860a90b41ae9a2566ff1b80ac 18-May-2013 Dan Shi <dshi@chromium.org> [Autotest] correct au test name to comply with run_suite

run_suite has special use of |.| in test name. If a test name has dot in it,
run_suite will fail to locate its job from keyvals in tko view.

keyvals are keyed by the hash of job name. Based on method run_suite/
get_view_info, the test name is parsed out from view['test_name'] with build
and suite info stripped. And, the job name is parsed out from test name with
the section before first |.|: std_job_name = test_name.split('.')[0]

BUG=chromium:226147
TEST=tested with run_suite in local machine
DEPLOY=none

Change-Id: I5aac665c012357d3161538cd4211d32c041af498
Reviewed-on: https://gerrit.chromium.org/gerrit/55598
Tested-by: Dan Shi <dshi@chromium.org>
Reviewed-by: Chris Sosa <sosa@chromium.org>
Commit-Queue: Dan Shi <dshi@chromium.org>
ull_release_test.py
b86d2667b0bff0c43e3e26d5d46af6cd0df45c3d 09-May-2013 Chris Sosa <sosa@chromium.org> When someone specifies an archive_url -- use the full prefix for nmo, etc.

We have builders that have interesting patterns that our logic can't account
for. In order to make au suite testing more flexible we have to allow for
any prefix naming to specify where a build can be found.

Specifically, if something like:

--archive_url=\
gs://my_bucket/special_prefix-mario-specific_suffix/R28-1234.0.0 is specified,

full_release_test will look for nmo/specific payloads in

gs://my_bucket/special_prefix-mario-specific_suffix

So if a specific for 1230.0.0 is requested, full_release_test will look in

gs://my_bucket/special_prefix-mario-specific_suffix/R28-1230.0.0

For the full payload.

BUG=chromium:238713
TEST=Ran it with specific,npo,nmo on canary builds and pgo-use builds with/
without archive_url specified.

Change-Id: I55b265513ced2e02f517e6f6bdd9cc195454e89e
Reviewed-on: https://gerrit.chromium.org/gerrit/50547
Tested-by: Chris Sosa <sosa@chromium.org>
Reviewed-by: Gilad Arnold <garnold@chromium.org>
Commit-Queue: Gilad Arnold <garnold@chromium.org>
ull_release_test.py
elease_config.ini
est_image.py
16ad96b19e0f29e77a8402a42ca6ac52fdc33080 25-Apr-2013 Tracy Turchetto <tturchetto@chromium.org> Adding skip_board option

TEST=This is a test
BUG=chromium:235545

Change-Id: I30eb89794c7f7fff648374c8c1cb7a26e3350677
Reviewed-on: https://gerrit.chromium.org/gerrit/49222
Reviewed-by: Chris Sosa <sosa@chromium.org>
Commit-Queue: Tracy Turchetto <tturchetto@chromium.org>
Tested-by: Tracy Turchetto <tturchetto@chromium.org>
ull_release_test.py
1ce80e42438bcdf22fe6832976911132f1fe4807 12-Apr-2013 Chris Sosa <sosa@chromium.org> Change NAME attribute in dynamically generated control files to include suffix.

Dynamic suite uses the name of the test in the control file to find test logs.
Currently when we run the au suite, run_suite cannot find the right test log
because it returns just the first matching test. See:
crbug.com/226147. This fixes that by re-encoding the NAME when we generate the
file.

BUG=chromium:226147
TEST=Ran it locally and verified names were correct.

Change-Id: Icd2a74bd134dbabb371e4a6b600d699d032f4f80
Reviewed-on: https://gerrit.chromium.org/gerrit/47934
Tested-by: Chris Sosa <sosa@chromium.org>
Reviewed-by: Gilad Arnold <garnold@chromium.org>
Commit-Queue: Chris Sosa <sosa@chromium.org>
ull_release_test.py
ba75dc0e0821bd1c0c4d447200976912856c5e05 06-Apr-2013 Chris Sosa <sosa@chromium.org> Fix bug: Unable to run Full AU with "--all_boards" option from autotest

Error:
full_release_test.py: error: No boards listed.

BUG=chromium:227069
TEST=Ran it with/without all_boards specified

Change-Id: I870b9e9ee48486cde7b0103cd16ad40649a6a4f3
Reviewed-on: https://gerrit.chromium.org/gerrit/47486
Reviewed-by: Chris Sosa <sosa@chromium.org>
Tested-by: Chris Sosa <sosa@chromium.org>
Commit-Queue: David James <davidjames@chromium.org>
ull_release_test.py
693672451832764a0dc4f114ca324c9d449f332f 28-Mar-2013 Chris Sosa <sosa@chromium.org> Add branch for R27 to release_config.

BUG=None
TEST=Ran it

Change-Id: I96c468ee1bedc93e8871cf883b148e98bb2dfeab
Reviewed-on: https://gerrit.chromium.org/gerrit/46809
Commit-Queue: Chris Sosa <sosa@chromium.org>
Reviewed-by: Chris Sosa <sosa@chromium.org>
Tested-by: Chris Sosa <sosa@chromium.org>
elease_config.ini
fec1349a3e70eb41dce8bc07a8c63563d23d64b2 28-Mar-2013 Chris Sosa <sosa@chromium.org> Fix bug where full_release_test does not work well on trybots.

There's a couple things here. First we pass in a custom URL to find payloads
but we don't use it elsewhere. This never quite worked before (I was just lucky
because other canaries had run with that same version so source_image_uri was
always found from them). Instead I've fixed the logic to find archive_url for
the target image once (when we instantiate the test config generator) rather
than each time we find the payload uri.

Second, I've loosened the logic about exact matches for target releases as the
version may have an attempt # that is not passed in by the caller. If the
tested_release is a prefix of the version, it matches. I've also applied
this to the test because otherwise this test won't work for non-release images.
Non-release images use suffix's and timestamps that are pretty much impossible
to find out from a payload.

Finally, I've gotten rid of 3 unused variables from the test to cleanup and
make this logic simpler. We don't use the branches anymore in the test or
board. We just use the versions to verify that the test installed the right
image. Nothing more. The use for them was removed when I started inferring
the URL of the payload from the url's rather than re-constructing them.

BUG=chromium:224674
TEST=Ran it locally with nmo, npo, and specific on trybots and non-trybots.

Change-Id: If4c903de76d16ccb0d798bd09031aa3ac9f107a0
Reviewed-on: https://gerrit.chromium.org/gerrit/46808
Commit-Queue: Chris Sosa <sosa@chromium.org>
Reviewed-by: Chris Sosa <sosa@chromium.org>
Tested-by: Chris Sosa <sosa@chromium.org>
ull_release_test.py
est_image.py
78804c98142d0e084e7684777ff9dd117e0bb6de 26-Mar-2013 Chris Sosa <sosa@chromium.org> Don't break nmo testing when we know the target branch and the branch updates.

This is part of getting nmo testing on the buildbot. This test can't break
every time we branch. The limiting factor here is that we use release_config
to determine the branch of the src image in a delta payload. We fix this by
parsing the delta for the branch.

BUG=chromium:223783
TEST=Remove R26 from release config and used archive_url + npo/nmo and it
worked.

Change-Id: I15ce652be052b64adadaffa11dcd1b27b70b1aca
Reviewed-on: https://gerrit.chromium.org/gerrit/46462
Tested-by: Chris Sosa <sosa@chromium.org>
Reviewed-by: Gilad Arnold <garnold@chromium.org>
Commit-Queue: Chris Sosa <sosa@chromium.org>
ull_release_test.py
641c929a4205a630d9065332c7a30c5ef6c30cd3 21-Mar-2013 Chris Sosa <sosa@chromium.org> Deal with empty returns correctly in test_image.

Fixes a bug in:
./full_release_test.py --specific 3833.0.0 --npo 3881.4.0 --all_boards

Where is a payload is missing for one board, it breaks the run for all
boards (in this case stumpy-release). This is because with my recent changes
I failed to honor the None or [] depending on single = True | False given in
the docstring.

BUG=None
TEST=Ran it with above -- gave warning about missing stumpy payload but
continued.

Change-Id: I4ce6ca30a2533622d35cb35a49fbe6f33bc4687c
Reviewed-on: https://gerrit.chromium.org/gerrit/46144
Tested-by: Chris Sosa <sosa@chromium.org>
Reviewed-by: Gilad Arnold <garnold@chromium.org>
Commit-Queue: Paul Stewart <pstew@chromium.org>
est_image.py
c0dec3f5ce258980ea6835285a6685b2c1cf7f5c 11-Mar-2013 Tracy Turchetto <tturchetto@chromium.org> Run all boards, avoid type in testing board individually

BUG=chromium-os:39807
TEST=none

Change-Id: I58835e751f86b85b39419ec424412a455a5f923e
Reviewed-on: https://gerrit.chromium.org/gerrit/45112
Reviewed-by: Chris Sosa <sosa@chromium.org>
Commit-Queue: Tracy Turchetto <tturchetto@chromium.org>
Tested-by: Tracy Turchetto <tturchetto@chromium.org>
oard_config.ini
ull_release_test.py
481fbbf599f4b4491f7b071b777b8b7408b6a901 28-Feb-2013 Chris Sosa <sosa@chromium.org> Automatically install devserver if not present.

BUG=chromium-os:37575
TEST=Ran it with/without devserver in site-packages.

Change-Id: I868e9862e107224ec2882518d3e73bb2b7c6c2ff
Reviewed-on: https://gerrit.chromium.org/gerrit/44246
Tested-by: Chris Sosa <sosa@chromium.org>
Reviewed-by: Gilad Arnold <garnold@chromium.org>
Reviewed-by: Prashanth Balasubramanian <beeps@chromium.org>
Reviewed-by: Scott Zawalski <scottz@chromium.org>
Commit-Queue: Chris Sosa <sosa@chromium.org>
est_image.py
1bf41c4ff52e8a3ea1a99fa7331a1c77349c9f22 27-Feb-2013 Chris Sosa <sosa@chromium.org> Switch over test_image to use devserver gsutil_util api.

This CL switches full_release_test from using gs ls naively as
gs ls has a race condition with gs cp i.e. if I gs cp a file
into GS, it's not guaranteed to be there in a following call to
gs ls (even though you can download/cat it with gs cat or gs cp).
We've already worked around this problem in the devserver (specially
in gsutil_util). This change modifies our call to gs ls to use the
devserver gsutil_util instead.

I've also had some leftover cleanup from previous CL's on this
topic that are in full_release_tests. Minor nits.

BUG=chromium-os:37575
TEST=Ran it with / without archive_url.

Change-Id: I03d533bc40742c534884de5234cddebde1e528a2
Reviewed-on: https://gerrit.chromium.org/gerrit/44208
Tested-by: Chris Sosa <sosa@chromium.org>
Reviewed-by: Gilad Arnold <garnold@chromium.org>
Reviewed-by: Prashanth Balasubramanian <beeps@chromium.org>
Commit-Queue: Chris Sosa <sosa@chromium.org>
ull_release_test.py
est_image.py
bc69deaf8ce5fb74646f0ff5d32a3773c5c3fbd1 23-Feb-2013 Chris Sosa <sosa@chromium.org> Allow archive_url to be passed in directly for target payload dir in gs.

The main use case for this is automated builders who are uploading
payloads themselves. Given that they know exactly where to find the payload,
allow them to override the archive_url such that npo testing always works
regardless of the builder.

trybot-* is not flexible enough as the format can change in various ways like
trybot-x86-mario-release/Version-(some random build number) or for non canaries
mario-paladin/version.

BUG=chromium-os:37575
TEST=Ran it with/without archive_url.

Change-Id: I0d20e1265682e60b82c4b10940b4426bc6c44847
Reviewed-on: https://gerrit.chromium.org/gerrit/43846
Commit-Queue: Chris Sosa <sosa@chromium.org>
Reviewed-by: Chris Sosa <sosa@chromium.org>
Tested-by: Chris Sosa <sosa@chromium.org>
ull_release_test.py
est_image.py
f80a0857e1253b03238c77cc1c7896e714a736d8 23-Feb-2013 Chris Sosa <sosa@chromium.org> Switch full_release_test to use a class to pass args.

Was adding a flag and it took almost 100 lines to propogate to
find_payload_uri which was a lot of work to test. Instead, I have
refactored to put all these methods into a class such that
adding a new option to get propagted is < 10 lines of code making
the code easier to maintain/work on.

BUG=chromium-os:37575
TEST=Ran --npo, --nmo, --specific.

Change-Id: I4046eae0788f75fd440b34078b6056e0f7f4f18c
Reviewed-on: https://gerrit.chromium.org/gerrit/43839
Tested-by: Chris Sosa <sosa@chromium.org>
Reviewed-by: Gilad Arnold <garnold@chromium.org>
Commit-Queue: Chris Sosa <sosa@chromium.org>
ull_release_test.py
5e806d4216be6bd19c22f043213117bfcd09f9e5 05-Mar-2013 Chris Sosa <sosa@chromium.org> Have AU tests use pool:suites in addition to the metahost for the board.

Set priority to Low to prevent test from stealing machines after a suite's
try job.

BUG=chromium-os:39573
TEST=Ran it http://cautotest/afe/#tab_id=view_job&object_id=2109023

Change-Id: Ie5cb6975ee1c97114702b9ee1e464dbfdc3383ed
Reviewed-on: https://gerrit.chromium.org/gerrit/44673
Commit-Queue: Chris Sosa <sosa@chromium.org>
Reviewed-by: Chris Sosa <sosa@chromium.org>
Tested-by: Chris Sosa <sosa@chromium.org>
ull_release_test.py
18c70b3d929b759ea9ba4e876517c6b8fd4d6921 15-Feb-2013 Chris Sosa <sosa@chromium.org> Some small fixes found while doing an e2e test with devserver changes.

1) Alex's change to not exit 0 totally now clobbers you shadow config
even if you say no.
2) Release config should be updated for R27.
3) Site RPC interface -- better logging.
4) Site_Suite didn't actually allow an int override -- kept on casting it
to a string.

BUG=None
TEST=Ran through devserver test using cli/atest suite create and setup
autotest with shadow config.

Change-Id: Ie7f61fe95c3a642455de33416367085e159c3947
Reviewed-on: https://gerrit.chromium.org/gerrit/43429
Commit-Queue: Chris Sosa <sosa@chromium.org>
Reviewed-by: Chris Sosa <sosa@chromium.org>
Tested-by: Chris Sosa <sosa@chromium.org>
elease_config.ini
cedaf8ce647d420b39960e15c954918835c82bbe 05-Feb-2013 Tracy Turchetto <tturchetto@chromium.org> Adding new boards: stout, butterfly

BUG=None
TEST=None

Change-Id: I77fb4a8647ed8da8b9e72a0021428ddf7d74e031
Reviewed-on: https://gerrit.chromium.org/gerrit/42635
Reviewed-by: Chris Sosa <sosa@chromium.org>
Commit-Queue: Tracy Turchetto <tturchetto@chromium.org>
Tested-by: Tracy Turchetto <tturchetto@chromium.org>
oard_config.ini
52e1a5ad1c15086485d0b904c2322132e6a364d8 25-Jan-2013 Chris Sosa <sosa@chromium.org> Add ability to dump control files instead of sending them to the afe.

Adds option control_file_dir which if set dumps the control files
into the dir instead of run them against the afe. Will be used
by automated builders.

BUG=chromium-os:37575
TEST=Ran it with/without option

Change-Id: I0322b1ed6945dd6296a8163174af9ed6a986bf7e
Reviewed-on: https://gerrit.chromium.org/gerrit/42044
Reviewed-by: Chris Sosa <sosa@chromium.org>
Tested-by: Chris Sosa <sosa@chromium.org>
Commit-Queue: Chris Sosa <sosa@chromium.org>
ull_release_test.py
03c7e5e5401a211f2932c82a687c87296ee412bf 25-Jan-2013 Chris Sosa <sosa@chromium.org> Add a new au suite type that is generated by full_release_test.

full_release_test will be generating the control files for this suite
(at least currently and will be called by the automated builders).
This sets up what's needed for the suite workflow to work correctly.

BUG=chromium-os:37575
TEST=Ran it with I0322b1ed, copied control files dumped in to
server/site_tests/autoupdate_EndToEndTest/ and ran
run_remote_tests suite:au

Change-Id: I92bbb5d0e5f8cd4acfd2de1015e85484f8a1b033
Reviewed-on: https://gerrit.chromium.org/gerrit/42048
Tested-by: Chris Sosa <sosa@chromium.org>
Reviewed-by: Scott Zawalski <scottz@chromium.org>
Commit-Queue: Chris Sosa <sosa@chromium.org>
ull_release_test.py
1318001bd349930e1a2a152324100583a841a892 25-Jan-2013 Gilad Arnold <garnold@chromium.org> Autotest: fix reference to -he board names on chromeos-image-archive

Apparently, the builders' populated gs://chromeos-image-archive bucket
uses a naming convention that is different from the standard release one
for -he variants, e.g. x86-alex_he. This fixes this problem.

BUG=None
TEST=Alternative -he board variant names used in gs lookups

Change-Id: Ia7ae10d34b5c24b028811caf7865fc439a514aa7
Reviewed-on: https://gerrit.chromium.org/gerrit/42023
Commit-Queue: Gilad Arnold <garnold@chromium.org>
Reviewed-by: Gilad Arnold <garnold@chromium.org>
Tested-by: Gilad Arnold <garnold@chromium.org>
est_image.py
b2eceeff5bed1814bdb7fe3257af8a6959025099 25-Jan-2013 Chris Sosa <sosa@chromium.org> Give a more descriptive autotest job name.

I decided to switch us to follow the suite convention i.e.

stumpy-release/R26-3566.0.0/au/autoupdate_EndToEndTest.specific_R25-3428.63.0

This should be easier to find and be exact.

BUG=chromium-os:38219
TEST=Ran it with npo/nmo/specific.

Change-Id: Ia5b952c33325a888832f70968773d872ab8a0319
Reviewed-on: https://gerrit.chromium.org/gerrit/41981
Commit-Queue: Chris Sosa <sosa@chromium.org>
Reviewed-by: Chris Sosa <sosa@chromium.org>
Tested-by: Chris Sosa <sosa@chromium.org>
ull_release_test.py
1852d3f5a0bf49de49b0e0fe73b2f9b59ae76325 25-Jan-2013 Gilad Arnold <garnold@chromium.org> Autotest: fix --specific functionality in full_release_test.py

Turns out that the way the script was accumulating test configurations
prevented it from configuring tests with a source release from the
--specific argument if a previous board has already been configured to
test with that source version.

BUG=None
TEST=specific test properly configured for multiple boards

Change-Id: Ifd967cef559302f6a337ef0f65d571c2e9cc48e4
Reviewed-on: https://gerrit.chromium.org/gerrit/41977
Reviewed-by: Chris Sosa <sosa@chromium.org>
Commit-Queue: Gilad Arnold <garnold@chromium.org>
Tested-by: Gilad Arnold <garnold@chromium.org>
ull_release_test.py
d45e1ffbe269cbbeee14f2b7a0120e192240a555 17-Jan-2013 Chris Sosa <sosa@chromium.org> Remove servo requirement from full_release_test and schedule remote jobs.

This CL is composed of two components:

1) Remove the hardcoding of localhost to use the afe defined in the autotest
config. This allows for either local/remote but defaults to using cautotest.
2) Removes the servo requirement. If servo is not set, the full payload for
the src image is sent as opposed to the test image for the src. Also, servo
args are not used.

This CL also does some small cleanup strings and instead of reporting the
job_id, gives the full URL to the job on any debug level.

BUG=chromium-os:37734, chromium-os:37735
TEST=Ran it against cautotest with --npo, --nmo, --fsi. run_pylint and friends.

Change-Id: If5bdd73ec1242fc863b81cfa57fc6e0a9ab1024b
Reviewed-on: https://gerrit.chromium.org/gerrit/41502
Tested-by: Chris Sosa <sosa@chromium.org>
Reviewed-by: Gilad Arnold <garnold@chromium.org>
Commit-Queue: Chris Sosa <sosa@chromium.org>
ull_release_test.py
cd16facfaf5da13b9c6caa1d6734e3be6515f6a1 10-Jan-2013 Gilad Arnold <garnold@chromium.org> Autotest: full_release_tests won't crash if no source releases found

The script now correctly handles the case where the list of source
releases for some test type (e.g. 'fsi' test on x86-zgb) is empty.

BUG=None
TEST=Correctly handling the case of no FSIs on x86-zgb

Change-Id: Iab2798acf94e117838eb047ecad3feff5ddd32e3
Reviewed-on: https://gerrit.chromium.org/gerrit/41033
Tested-by: Gilad Arnold <garnold@chromium.org>
Reviewed-by: Chris Sosa <sosa@chromium.org>
Reviewed-by: Tracy Turchetto <tturchetto@chromium.org>
Commit-Queue: Gilad Arnold <garnold@chromium.org>
ull_release_test.py
e7c7b8fb1d6bf945e644ebdcc36cc284aeaa982e 10-Jan-2013 Gilad Arnold <garnold@chromium.org> Autotest: full_release_test accepts a list of boards

This allows scheduling a complete suite of end-to-end release tests in
one call.

BUG=chromium-os:37739
TEST=Scheduled release tests for multiple boards

Change-Id: I5bc66fa88191210d894b3bc6e520c610b152300d
Reviewed-on: https://gerrit.chromium.org/gerrit/41032
Tested-by: Gilad Arnold <garnold@chromium.org>
Reviewed-by: Chris Sosa <sosa@chromium.org>
Reviewed-by: Tracy Turchetto <tturchetto@chromium.org>
Commit-Queue: Gilad Arnold <garnold@chromium.org>
ull_release_test.py
30bd5c7d65ab1bd7d73bfb22bef880aaa389b066 09-Jan-2013 Gilad Arnold <garnold@chromium.org> Autotest: revise release branch tagging history

It turns out that there are slight discrepancies between the actual
Chrome OS tree branch points and how they propagate to builder release
tagging. This CL reflects these differences, aiming for a more precise
mapping of release version numbers to branch tags.

BUG=None
TEST=Branch tags inferred correctly by full_release_test.

Change-Id: Ib56c072ba014496122716027e60895c996223316
Reviewed-on: https://gerrit.chromium.org/gerrit/40936
Reviewed-by: Tracy Turchetto <tturchetto@chromium.org>
Commit-Queue: Gilad Arnold <garnold@chromium.org>
Tested-by: Gilad Arnold <garnold@chromium.org>
elease_config.ini
53909f71f49141f6d07574117c1a4c0aad29afed 08-Jan-2013 Tracy Turchetto <tturchetto@chromium.org> update FSI version for different platforms.

BUG=none
TEST=none
Change-Id: Ie10c2b049a0027d39fe122b42b98371d0cae787a
Reviewed-on: https://gerrit.chromium.org/gerrit/40564
Reviewed-by: Gilad Arnold <garnold@chromium.org>
Commit-Queue: Tracy Turchetto <tturchetto@chromium.org>
Reviewed-by: Tracy Turchetto <tturchetto@chromium.org>
Tested-by: Tracy Turchetto <tturchetto@chromium.org>
oard_config.ini
1bd39dc55fca593a063e153119355fd1c9fefd85 04-Jan-2013 Chris Sosa <sosa@chromium.org> Fix bug where we always add npo and nmo if they exist.

There are --npo and --nmo options. We should respect them.

BUG=None
TEST=Tested with both separately and at the same time.

Change-Id: Id75041ee10c32e42274955d9077c4521057fce61
Reviewed-on: https://gerrit.chromium.org/gerrit/40411
Commit-Queue: Chris Sosa <sosa@chromium.org>
Reviewed-by: Chris Sosa <sosa@chromium.org>
Tested-by: Chris Sosa <sosa@chromium.org>
ull_release_test.py
db030fef21891ee24f7bd721f592bbc0b1c38a31 03-Jan-2013 Chris Sosa <sosa@chromium.org> Allow testing of R26 payloads.

BUG=None
TEST=Ran with -n --nmo and 3498.0.0 x86-mario.

Change-Id: If0ae7dc6d081034177ee699d1eda4cb7a80c4542
Reviewed-on: https://gerrit.chromium.org/gerrit/40345
Tested-by: Chris Sosa <sosa@chromium.org>
Reviewed-by: Gilad Arnold <garnold@chromium.org>
Commit-Queue: Chris Sosa <sosa@chromium.org>
elease_config.ini
47c8a9a7cf24e33dc66fccf64d7679646f9030b6 02-Jan-2013 Chris Sosa <sosa@chromium.org> Remove path dependencies from full_release_test.py.

This utility should be able to invoked from anywhere.

BUG=None
TEST=Ran it.

Change-Id: I0d964138f93498fb59882e1c3c1fc1e360683dbb
Reviewed-on: https://gerrit.chromium.org/gerrit/40343
Tested-by: Chris Sosa <sosa@chromium.org>
Reviewed-by: Gilad Arnold <garnold@chromium.org>
Commit-Queue: Chris Sosa <sosa@chromium.org>
oard.py
elease.py
4d2f44277f3b763efe79c38ddd99e15542e56d4a 29-Dec-2012 Gilad Arnold <garnold@chromium.org> autotest: allow listing specific source releases for testing

In addition to inferring source release versions for a fixed set of
cases (N-1, FSI, etc), users can now request tests from a specific
release to the target release. These tests will be full update tests.

* Added --specific command-line option which takes a list of release
versions.

* Rearranged the code to coalesce common behavior and improve naming
conventions.

BUG=chromium-os:37428
TEST=Specific test configs constructed correctly.

Change-Id: Iffbfb59714bd3087f76b5b1913b71fded5b2d40d
Reviewed-on: https://gerrit.chromium.org/gerrit/40283
Reviewed-by: Chris Sosa <sosa@chromium.org>
Commit-Queue: Gilad Arnold <garnold@chromium.org>
Tested-by: Gilad Arnold <garnold@chromium.org>
ull_release_test.py
af9c69900d529c660b392f510fd81cca7d2d1d17 29-Dec-2012 Gilad Arnold <garnold@chromium.org> autotest: add dry-run option to full_release_test.py

This will allow the script for form all the necessary test
configurations without actually running any test. Good for testing.

BUG=chromium-os:37428
TEST=Test configurations gathered and listed, but nothing is scheduled.

Change-Id: I7bbb47fef7a052f1002bd07c597ac073456befe8
Reviewed-on: https://gerrit.chromium.org/gerrit/40282
Reviewed-by: Chris Sosa <sosa@chromium.org>
Commit-Queue: Gilad Arnold <garnold@chromium.org>
Tested-by: Gilad Arnold <garnold@chromium.org>
ull_release_test.py
4c1f2d4bde2ab92094277ab41d81a9c8e6ed6165 21-Dec-2012 Gilad Arnold <garnold@chromium.org> autotest: update FSI releases (full_release_test.py)

This deprecates some FSI releases and adds new ones, for Alex and ZGB.

TEST=Generating expected test configs for updated boards.
BUG=chromium-os:33762

Change-Id: Ife82bf5a31e6a0bf0ad9d35e9721f7078445ddd8
Reviewed-on: https://gerrit.chromium.org/gerrit/40048
Reviewed-by: Chris Sosa <sosa@chromium.org>
Tested-by: Gilad Arnold <garnold@chromium.org>
Commit-Queue: Gilad Arnold <garnold@chromium.org>
oard_config.ini
7b84a0f0270a1ed0da87857164e232045d248c5f 20-Dec-2012 Gilad Arnold <garnold@chromium.org> autotest: update branching history

This reflects the fact that R24 was skipped, and that R25 has branched.

TEST=Correct branch tags assigned to R25 builds.
BUG=chromium-os:33762

Change-Id: I3a7514960282228697913baa1e6a1a798f6966c4
Reviewed-on: https://gerrit.chromium.org/gerrit/40045
Reviewed-by: Chris Sosa <sosa@chromium.org>
Tested-by: Gilad Arnold <garnold@chromium.org>
Commit-Queue: Gilad Arnold <garnold@chromium.org>
elease_config.ini
c33f648ebe4c7b1f4f304dbfcbc1f0c80597becd 20-Dec-2012 Gilad Arnold <garnold@chromium.org> autotest: fix branch tag inference in full_release_test.py

Having previously misinterpreted the logic by which release builds are
being assigned a branch tag, this is now fixed: a branchpoint X.0.0 of
some branch R defines the major release X whose minor releases
(X.1-9999.Z) are representing builds along the branch. Therefore, it is
only releases whose major number is strictly > X (i.e. X+1.0.0 and
onward) that should be tagged with R+1.

TEST=Correct branch inferred for a release that's on the branchpoint.
BUG=chromium-os:33762

Change-Id: I908a014982d0dbc9c524ad80369f50ae1c53f95f
Reviewed-on: https://gerrit.chromium.org/gerrit/40044
Reviewed-by: Gilad Arnold <garnold@chromium.org>
Tested-by: Gilad Arnold <garnold@chromium.org>
Commit-Queue: Gilad Arnold <garnold@chromium.org>
elease.py
c7dd55526bab4d1fe7d34c33834c3c505a5d0821 20-Dec-2012 Gilad Arnold <garnold@chromium.org> autotest: small fix to full_release_test.py

Adding an overlooked default value for --log.

TEST=Script works without specifying --log (as expected).
BUG=chromium-os:33762

Change-Id: I347ad1454df8b57f9446aa5ec35d8fb341da5704
Reviewed-on: https://gerrit.chromium.org/gerrit/40043
Reviewed-by: Chris Sosa <sosa@chromium.org>
Tested-by: Gilad Arnold <garnold@chromium.org>
Reviewed-by: Gilad Arnold <garnold@chromium.org>
Commit-Queue: Gilad Arnold <garnold@chromium.org>
ull_release_test.py
03901089c0db27508a6b2ff61ae8b75eba77cf37 19-Nov-2012 Gilad Arnold <garnold@chromium.org> autotest: switching full release test to use AFE

With this change, full_release_test can schedule autoupdate_EndToEndTest
jobs via an Autotest Front-End (AFE). This includes:

* When using the AFE, we fetch and specialize the test's control script
with test-specific arguments.

* Now requiring an absolute path to a devserver checkout, so
a non-chrooted test execution can spawn a private Omaha/devserver
instance. A commented out definition appears in global_config.ini, and
should be overridden for specific environments in shadow_config.ini.

Other minor changes:

* Now inferring the absolute location of imported modules.

* Now enforcing a timeout on HTTP requests when reading host logs from
the devserver (30 secs). Also, HTTP exceptions are caught and handled,
not causing a test to crash.

* Eliminated the dev_mode option (not needed).

* Removed redundant str() conversions.

BUG=chromium-os:33762
TEST=tests scheduled via AFE, executing to completion

Change-Id: I3ef827b979faef7ba56d26664536de7b0c91cfc1
Reviewed-on: https://gerrit.chromium.org/gerrit/38841
Tested-by: Gilad Arnold <garnold@chromium.org>
Reviewed-by: Alex Miller <milleral@chromium.org>
Reviewed-by: Chris Sosa <sosa@chromium.org>
Commit-Ready: Gilad Arnold <garnold@chromium.org>
_init__.py
oard.py
ommon.py
ull_release_test.py
maha.py
elease.py
84eb60cb5d66d6052407ebae4f1aa38000c9cbcf 06-Nov-2012 Gilad Arnold <garnold@chromium.org> autotest: spawn a complete set of end-to-end autoupdate tests

This tool (full_release_test) infers and spawns a sequence of AU
end-to-end tests for a given release:

* Creates a list of test configurations, based on the given release and
the repository of available images and payloads.

* Spawns test instances sequentially via run_remote_tests.sh.

Some auxiliary modules:

* board: reference information about Chrome OS board. Parses
a board_config.ini file in the current directory.

* omaha: functions for querying Omaha.

* release: reference information related to releases and branches.
Parses a release_config.ini file in the current directory.

* test_image: handling of test images/payloads from archive.

Note: this tool is for local testing purposes only and will be phased
out once a more comprehensive solution is established via AFE and
triggered by build/paygen.

BUG=chromium-os:33760
TEST=Infers test configurations on x86-alex with test images; invokes
autotest (autoupdate_FullReleaseTest) for each.

Change-Id: I6b1e6addc925b811f3b844caa7dc3c585f203a22
Reviewed-on: https://gerrit.chromium.org/gerrit/37433
Commit-Ready: Gilad Arnold <garnold@chromium.org>
Reviewed-by: Gilad Arnold <garnold@chromium.org>
Tested-by: Gilad Arnold <garnold@chromium.org>
oard.py
oard_config.ini
ull_release_test.py
maha.py
elease.py
elease_config.ini
est_image.py