89 Commits

Author SHA1 Message Date
Chris Sosa
af62e73dce Add ability to download using newest image from zip url.
This changes the behavior of ctest to try to grab the latest zip from the zip web pages if it can't use the latest link (due to IOError or none provided).  It assumes they have an Apache server and they reference images using version->ChromeOS-version-.*.zip) for each board/channel.

Change-Id: I4ee075db7afd58c8d08f59aca2e69b5bab5ff5e9

BUG=7675
TEST=Ran it with -l "http://Doesnotexist" and also without a -l option.  Added new unittests to test and ran them as well.

Review URL: http://codereview.chromium.org/3659002
2010-10-12 15:07:54 -07:00
Paul Stewart
e45157fe07 Temporarily clear noexec flag on /var if set
The "emerge" process sometimes copies files to /var/tmp
and then run it.  Recent changes to images set the
"noexec" flag on /var, thus preventing such activities.
Temporarily clear this flag from within cros_package_to_live.

BUG=none
TEST=Manually set noexec on /var and run cros_package_to_live

Review URL: http://codereview.chromium.org/3739001
2010-10-12 14:25:02 -07:00
Chris Sosa
e695541bc6 Hide errors until builder succeeds.
Change-Id: Ifb40e4931c1b0a1d32051d1d4851bca572ef3acf

BUG=7649
TEST=Ran it with fake urls

Review URL: http://codereview.chromium.org/3678004
2010-10-12 11:07:28 -07:00
Will Drewry
32d8c11747 build_image & make_bootable: allow additional kernel cmdline args
In order to more easily test kernel commandline tweaks, ensure that
--boot_args is propagated to all kernel cmdline sinks.

This is useful for changing default schedulers and any other kernel argument
tweaks we may want to quickly test out.

TEST=build and tested x86-generic
BUG=none

Change-Id: I5138755aa8c5e32e7f117f18291d2ae197e95bef

Review URL: http://codereview.chromium.org/3644004
2010-10-11 15:37:17 -05:00
Chris Sosa
020aa69f37 Fixes for cbuild to work with ctest.
1)  image_to_vm aborts because e2fschk requires a terminal to
be connected in order to check whether or not you want to repair the fs.  Since
we always want this to be true, set -p

2)  Clean up test harness to only verify the number of tests that passed on the
base image are the same on the update back to.  This is because older images
have many tests that fail.  I leave 10% as a reasonable number to pass.

3)  Redirect output from autotest in run_remote_tests to stderr so it gets
logged in a calling script that captures stdout.

Change-Id: If412274353683add20d136747113eb9c2bd41330

BUG=4690, 5533, 7287
TEST=Ran with internal tools for builders.

Review URL: http://codereview.chromium.org/3536018
2010-10-08 16:36:20 -07:00
Chris Sosa
d76a917edb Add a simple wrapper script around vm lib to start a vm.
Change-Id: Ic3238b3063d0e889c424ff6a9792d9c0f6bebca1

BUG=
TEST=Ran it

Review URL: http://codereview.chromium.org/3628002
2010-10-07 23:20:20 -07:00
Chris Sosa
4befe39060 Revert "Revert "Close tree when smoke bvt fails.""
This reverts commit 224f7548b5067f28c33f3a6607748810cc83eb94.

BUG=
TEST=

Review URL: http://codereview.chromium.org/3525022

Change-Id: Ib4e136b96a1d9dac7345598b281b053a47421e77
2010-10-07 19:04:05 -07:00
Chris Sosa
33146728ef Add ability to vm library to retry until we can ssh into it.
Change-Id: I4de388bb1af6cd4568cdc154971927941eb73800

BUG=7503
TEST=Ran test by closing vm's as they start up to see retry work.

Review URL: http://codereview.chromium.org/3598019
2010-10-07 15:58:24 -07:00
Chris Sosa
d8f50a931f Propagate return code correctly from tests.
Change-Id: I28c5f3e48646ec24813ef86f4cd16aac120cba5b

BUG=
TEST=Introduced artificial bug and checked return code
from test.

Review URL: http://codereview.chromium.org/3593010
2010-10-07 11:24:28 -07:00
Chris Sosa
224f7548b5 Revert "Close tree when smoke bvt fails."
This reverts commit d9bbe8792f412954384de1809e307c508ae37724.

TBR=Open tree.

Change-Id: I2d81711e4f995dbe025b7ed5f99fb4e4f7aba1c8
2010-10-06 17:40:51 -07:00
Chris Sosa
24680f0059 Add ability to test machines with au test harness.
Change-Id: I913acd95c49b1cf0fd666b49fb5ec1e24f0f83d1

BUG=7285
TEST=Ran through test against with two test images.

Review URL: http://codereview.chromium.org/3619009
2010-10-06 16:56:56 -07:00
Chris Sosa
2cc5cd4155 Add ctest that calls the au test harness.
Change-Id: Ief14528b7e98d792da4be39976ff0fe48219f93b

BUG=6913
TEST=Ran image_to_vm, cros_au_test_harness, and ctest using internal urls.

Review URL: http://codereview.chromium.org/3606008
2010-10-06 14:29:45 -07:00
Chris Sosa
d9bbe8792f Close tree when smoke bvt fails.
Change-Id: I01d613527777098616e8d5bd2b4b27bce240c02f

BUG=
TEST=Ran cbuildbot and prematurely killed autotest to show test failure.  CBuildbot fails saying that cros_run_vm_test smoke_Suite failed.

Review URL: http://codereview.chromium.org/3517010
2010-10-06 10:58:08 -07:00
Chris Sosa
c1b14b52d0 Add defaults for cros_make_image_bootable.
This will allow dev who didn't build an image to still use cros_make_image_bootable
to update their image -- including mod_image_for_test / image_to_vm.

Change-Id: I1ba4292223b28b21d5416745e7744641100fa4ad

BUG=7370
TEST=Ran image_to_vm with other image and image I built myself.  Also ran
cros_make_image_bootable directly on a the same two images.

Review URL: http://codereview.chromium.org/3569015
2010-10-05 13:23:50 -07:00
Chris Sosa
af33f8f8ae Add board option to au test harness so that this works for others without a default board and add ability to reference images without relative paths.
Change-Id: I4afa86fa7a6b772124de56114910a1ca5e3d4511

BUG=
TEST=Ran through update harness code and ran loman.

Review URL: http://codereview.chromium.org/3612004
2010-10-04 18:19:29 -07:00
Chris Sosa
3ede50ed4e Add enabling of local account. This should get the suite_Smoke to go green on the pfq.
Change-Id: Id480f45836a81d7d994b92d7a45d16208e1dd11c

BUG=
TEST=Ran locally.  Saw all tests pass.

Review URL: http://codereview.chromium.org/3567010
2010-10-01 14:12:26 -07:00
Paul Stewart
3da3113c01 Remove cros_copy_upgrade_server.sh
This script had a short painful life, constantly being brittle
and broken.  It is time for it to go.  Please use
cros_image_to_target.py instead.

BUG=none
TEST=none

Review URL: http://codereview.chromium.org/3536002
2010-10-01 11:22:23 -07:00
Paul Stewart
48d7d8bb7f Add sha256 to devserver clone updater output
BUG=none
TEST=none

Review URL: http://codereview.chromium.org/3572006
2010-09-30 18:16:21 -07:00
Chris Sosa
cb9e4fe449 Change hostname to localhost ip
TBR

Change-Id: I1a911da2df7cddda3eb35f6df23e203cd94c1ffe

BUG=
TEST=Locally.

Review URL: http://codereview.chromium.org/3536003
2010-09-30 18:02:09 -07:00
Chris Sosa
bccc7c1d03 Initial auto update engine test harness.
This harness has support for test on vm machines.  It takes a base image and target image path, creates an update-enabled vm image from the base image and performs updates using cros_run_vm_update (vm wrapper around image_to_live).  It uses --snapshot for updating vm's and keeps them on (like a real machine would) so that the VM image is clean on the next test.

The current check in has two test cases -- updates without clobbering the stateful partition and updates with clobbering the stateful partition.

Change-Id: I5406eadb39fa36601d17f8dd15625bd6a8b38c15

BUG=6911
TEST=Ran through tests.

Review URL: http://codereview.chromium.org/3554002
2010-09-30 15:06:15 -07:00
Chris Sosa
c2db26c796 Add methods to run vm tests on x86-pre-flight-queue.
Right now we're leaving error_ok=True until the tests are shown to work on builder.

Change-Id: I6b8c690a0da30948389fd4312032c78d87115364

BUG=6906
TEST=Ran through it locally.

Review URL: http://codereview.chromium.org/3591002
2010-09-30 14:25:25 -07:00
Kenneth Waters
e3049de00f build_image: Merge x86 and ARM where possible.
- I looked at all of the x86 and ARM paths through out build image scripts,
  these changes clean up stale comments, stale code, and unforks some small
  things.

BUG=none
TEST=Built images for x86-generic, arm-generic and tegra2-seaboard, booted tegra2-seaboard image.

Review URL: http://codereview.chromium.org/3448022

Change-Id: Ibad2774ff2cbf5f15528454506542b87e43e24a2
2010-09-30 14:20:34 -07:00
Chris Sosa
45bec936f6 Move vm constants into their own file. This will make it easier to share these constants.
Also fixed get latest image logic in image_to_vm and allowed for using the most recent image in cros_run_vm_test to follow other shell convention of using latest.

Change-Id: I60ed4c03d609500da7f6ae34ef57ba2e32f4b0bb

BUG=
TEST=Tested by running image_to_vm with --full and cros_run_vm_test with suite_Smoke

Review URL: http://codereview.chromium.org/3597001
2010-09-29 15:38:53 -07:00
Chris Sosa
3b65e8dd6f Add verify option to image_to_live.
Change-Id: I63f7ce38179b713bb26bed70d6fd392425595a81

BUG=
TEST=Ran with update vm script.

Review URL: http://codereview.chromium.org/3393019
2010-09-28 18:41:56 -07:00
Chris Sosa
f485c86416 Fix unit tests for cbuildbot.
Change-Id: I86b3eb5d7b421aaade85bd702b9089986c82cc76

BUG=
TEST=Re-ran unit tests with cbuildbot TOT.

Review URL: http://codereview.chromium.org/3441027
2010-09-28 13:08:40 -07:00
David James
70b297a263 Update cbuildbot.py to print manifests when we sync.
If cbuildbot.py printed out a manifest when it syncs, it would make it possible
for us to reproduce the build later by looking at what revisions the buildbot
was using. This is useful for debugging.

Change-Id: I186ad01eef0090b6c618cb7ad583085197474018

BUG=chromium-os:7069
TEST=Ran test suite with 3441027 patched in (Sosa's patch that fixes an unrelated issue with the unit tests)

Review URL: http://codereview.chromium.org/3461028
2010-09-25 23:25:18 -07:00
David James
7bf8d2715e Switch off repo sync --jobs, and turn on repo --trace.
repo sync --jobs doesn't check for errors, so we shouldn't use it in
automated scripts. repo --trace is needed so that we can diagnose
whether git is hanging.

BUG=chromium-os:7048, chromium-os:6774
TEST=Ran test suite

Change-Id: I9e68cfffe841a231f5fabef951ea2d45b81c1d5e

Review URL: http://codereview.chromium.org/3419024
2010-09-25 23:23:00 -07:00
Mandeep Singh Baines
ee49ac0ec5 loman: Add support for adding elements from default.xml
This is needed in order to do the right thing when adding projects
which require a revision attribute.

BUG=6811
TEST=Updated unittests and verified they pass.
Verified that I can add chromeos-kernel-next and revision gets set.

Change-Id: I12818dad464094cd50098170da3fcf38b1e32f17

Review URL: http://codereview.chromium.org/3400019
2010-09-24 08:27:50 -07:00
Kenneth Waters
9bc78b3acb make_image: Fake vmlinuz_hd.vblock on ARM.
- This unbreaks the devserver's update server for ARM.
- This also unforks some of build_image.

BUG=None
TEST=Installed to tegra2_seaboard from USB without --skip_vblock,
     updated tegra2_seaboard.

Review URL: http://codereview.chromium.org/3493004

Change-Id: I6e66344de51609393407934f78aa20f49974efef
2010-09-22 13:54:44 -07:00
Chris Sosa
8f6ee51c21 Add persist option to vm library.
BUG=
TEST=Tested by persisting, ctrl+c, continuing and using same vm.
Also without --persist

Review URL: http://codereview.chromium.org/3419014

Change-Id: I49e26eb86101e8b8b50e58a9f277d62d5fadc664
2010-09-22 11:51:52 -07:00
Chris Sosa
e8c3cdc91c cros_make_image_bootable is not compatible with restart_inside_chroot
restart_inside_chroot first assumes that the calling script is in
src/scripts.  Next any paths are not converted when passed so if
someone passes the most recent image, this will also not be interpreted
correctly.

Change-Id: Icb2dfc661eb84e134b4d8c5cf0354a6c1ab161f0

BUG=
TEST=Manually tested running outside chroot (getting error) and inside chroot.

Review URL: http://codereview.chromium.org/3421025
2010-09-21 17:45:15 -07:00
Chris Sosa
cc09f84b5e Update scripts for vm's
Change-Id: I63bdcaa3630c179d407310f6544c102f5353fa4d

BUG=5530
TEST=Ran both cros_run_vm_test and new script and had the latter update successfully.

Review URL: http://codereview.chromium.org/3427011
2010-09-21 17:09:51 -07:00
Paul Stewart
b0d5cf28e5 New application cros_image_to_target.py for ssh_tunnel upgrade
The RF testbed has hosts behind a one-way firewall, so the
conventional "image_to_live" script does not work.  My initial
attempt at solving this, 'cros_copy_upgrade_server', while
sometimes functional, was always quite brittle since it had
widely ranging dependencies which often changed in ways that
the authors could not predict would break our setup.

I've written from scratch a new script in python which uses
ssh tunnels to get around the problem of the firewall issue.
It also has retlatively minimal dependencies (stateful_update,
cros_generate_update_paylod, cgpt, get_latest_image.sh and
the testing keys) so hopefully it won't get blown away too
often.

BUG=none
TEST=Ran under chroot -- Need help testing

Review URL: http://codereview.chromium.org/3391008
2010-09-21 15:13:59 -07:00
Paul Stewart
fae37db122 Add "--mount" option to package_to_live
Optionally disable mount/remount during package install for
targets that are already mounted read-write.

BUG=none
TEST=rerun

Review URL: http://codereview.chromium.org/3439012
2010-09-21 13:19:48 -07:00
Kenneth Waters
ed54d93e2c build_image: Add verity support for ARM.
- Build a "kernel image" which contains a uboot script and a uboot kernel
  image.
- Fix some sd* assumptions.
- Remove cruft that has never done anything usefull from update_bootloaders

BUG=none
TEST=Built, booted, and updated on tegra2_dev-board

Review URL: http://codereview.chromium.org/3396011

Change-Id: I00ecf57faa5fe64c8e33dd4c042f1dbed806c10a
2010-09-21 10:29:54 -07:00
Paul Stewart
30d46e3c0d Re-do argument passing to match zbehan's change
zbehan's change: "run_remote_tests: destroy the with_spaces hack,
use the --args instead of -a (which doesn't work)", despite apparently
not working is in active use by others, both by folks using it on the
command line and by the script cros_run_wifi_tests.sh.  Fix the script
to match the new argument.

BUG=none
TEST=rerun

Review URL: http://codereview.chromium.org/3444010
2010-09-17 16:09:02 -07:00
Mandeep Singh Baines
6c6000b2c2 loman: don't report error when adding an exact duplicate.
BUG=5787
TEST=Updated and re-ran unittests.

Change-Id: I399e8cacde103f16b749dd83c57d03bcdf2e9475

Review URL: http://codereview.chromium.org/3385001
2010-09-14 10:19:50 -07:00
Paul Stewart
03b6ebf7d4 Add client_prefix (string) and old_prefix (bool) command line options
cros_copy_upgrade_server can now start the devserver with either prefix.
This is to help the migration from Memento to ChromeOSUpdateEngine.

BUG=none
TEST=none (yet)

Review URL: http://codereview.chromium.org/3304013
2010-09-13 13:28:14 -07:00
Mandeep Singh Baines
865a42edee loman: tool for updating local_manifest (initial commit)
BUG=5787
TEST=Ran unittests.

Change-Id: I6b8cc37eb2bf5f81f803f61b886106b6f08f3315

Review URL: http://codereview.chromium.org/3331013
2010-09-10 11:04:17 -07:00
Chris Sosa
7de6531962 Faster checkout and cleanup of old builds.
Change-Id: Id81fe4e7bd9cae7a51a45b6ea8a535c4ea9430f8

BUG=
TEST=Ran locally on top of previous build area.

Review URL: http://codereview.chromium.org/3337007
2010-09-02 15:10:48 -07:00
Paul Stewart
f9d7cf3ce0 remote_cp renamed to remote_cp_to. *shrug*
This function was renamed, so I renamed my reference to it.

BUG=none
TEST=Reran cros_package_to_live

Review URL: http://codereview.chromium.org/3331007
2010-09-01 18:32:37 -07:00
Nick Sanders
b801bec71a fix sign_to_ssd
Change-Id: If642d664163f36b79e3b6d845de0025cc3dc0372

BUG=6264
TEST="resign an image"

Review URL: http://codereview.chromium.org/3273011
2010-08-31 23:05:07 -07:00
Chris Sosa
e13960240b Fix cleanup so we don't have to clobber as much when failures occur
Change-Id: I120c49a38d2a17a2216296a68378fee7345f616a

TBR=petkov

Review URL: http://codereview.chromium.org/3255004
2010-08-30 22:37:28 -07:00
Chris Sosa
aaba25d817 Fix clobber. Strip any extra args and treat last arg as config.
Change-Id: I2bf951342c12d954bd1abbc8b878437c648b4ac7

TBR=Scottz
2010-08-30 20:28:11 -07:00
Chris Sosa
f0fcd1acfd Change config's to use .jail for cod[fg]'s
Change-Id: Ib7efb7d5a14371a3eb0dfa4a99992ea096146980

TBR=Config change:  Need to specify subnet for *.jail.
2010-08-30 18:52:46 -07:00
Ryan Cairns
1703423a77 Runs our BVT suite in a VM
Change-Id: I758c93596d5cbdd6b52b9acc82f4d6e19a326c9f

BUG=5518
TEST=Tested using all the options. All tests listed in the file pass.

Review URL: http://codereview.chromium.org/3107039
2010-08-30 17:03:50 -07:00
Chris Sosa
70e2c9e72a Move RunCommand, and Info/Warning/Die into common pylib
TEST=Ran all commands that used RunCommand or Die with
their associated unittests.

Review URL: http://codereview.chromium.org/3266004
2010-08-30 11:05:50 -07:00
Chris Sosa
1ec70345d9 Change clobber logic to be explicit
TEST=Tested with --clobber and without.

Change-Id: I6a938b3da673d97186cec79f25b22ea6176f1fdf

Review URL: http://codereview.chromium.org/3238012
2010-08-30 10:48:08 -07:00
Chris Sosa
0c13b46899 Move back to marking all until we have individual tree closing ready.
Review URL: http://codereview.chromium.org/3246003
2010-08-27 17:01:38 -07:00
Chris Sosa
0c156f9ccb TBR: Add replace to build_image 2010-08-27 13:11:56 -07:00