History log of /external/autotest/site_utils/autoupdate/full_release_test.py
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
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>
/external/autotest/site_utils/autoupdate/full_release_test.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>
/external/autotest/site_utils/autoupdate/full_release_test.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>
/external/autotest/site_utils/autoupdate/full_release_test.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>
/external/autotest/site_utils/autoupdate/full_release_test.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>
/external/autotest/site_utils/autoupdate/full_release_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>
/external/autotest/site_utils/autoupdate/full_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>
/external/autotest/site_utils/autoupdate/full_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>
/external/autotest/site_utils/autoupdate/full_release_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>
/external/autotest/site_utils/autoupdate/full_release_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>
/external/autotest/site_utils/autoupdate/full_release_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>
/external/autotest/site_utils/autoupdate/full_release_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>
/external/autotest/site_utils/autoupdate/full_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>
/external/autotest/site_utils/autoupdate/full_release_test.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>
/external/autotest/site_utils/autoupdate/full_release_test.py
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>
/external/autotest/site_utils/autoupdate/full_release_test.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>
/external/autotest/site_utils/autoupdate/full_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>
/external/autotest/site_utils/autoupdate/full_release_test.py
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>
/external/autotest/site_utils/autoupdate/full_release_test.py
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>
/external/autotest/site_utils/autoupdate/full_release_test.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>
/external/autotest/site_utils/autoupdate/full_release_test.py
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>
/external/autotest/site_utils/autoupdate/full_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>
/external/autotest/site_utils/autoupdate/full_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>
/external/autotest/site_utils/autoupdate/full_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>
/external/autotest/site_utils/autoupdate/full_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>
/external/autotest/site_utils/autoupdate/full_release_test.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>
/external/autotest/site_utils/autoupdate/full_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>
/external/autotest/site_utils/autoupdate/full_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>
/external/autotest/site_utils/autoupdate/full_release_test.py
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>
/external/autotest/site_utils/autoupdate/full_release_test.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>
/external/autotest/site_utils/autoupdate/full_release_test.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>
/external/autotest/site_utils/autoupdate/full_release_test.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>
/external/autotest/site_utils/autoupdate/full_release_test.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>
/external/autotest/site_utils/autoupdate/full_release_test.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>
/external/autotest/site_utils/autoupdate/full_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>
/external/autotest/site_utils/autoupdate/full_release_test.py
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>
/external/autotest/site_utils/autoupdate/full_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>
/external/autotest/site_utils/autoupdate/full_release_test.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>
/external/autotest/site_utils/autoupdate/full_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>
/external/autotest/site_utils/autoupdate/full_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>
/external/autotest/site_utils/autoupdate/full_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>
/external/autotest/site_utils/autoupdate/full_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>
/external/autotest/site_utils/autoupdate/full_release_test.py
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>
/external/autotest/site_utils/autoupdate/full_release_test.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>
/external/autotest/site_utils/autoupdate/full_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>
/external/autotest/site_utils/autoupdate/full_release_test.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>
/external/autotest/site_utils/autoupdate/full_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>
/external/autotest/site_utils/autoupdate/full_release_test.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>
/external/autotest/site_utils/autoupdate/full_release_test.py