Rationale: Consumers of this output should not have to eval() python
code in order to use the output. Also potentially useful for dumping
out of buildbot for consumption by other web-based tools.
Review URL: http://codereview.chromium.org/3148022
This change enables root filesystem integrity checking for all x86
builds by default. All mod_image_for_* work with this and the
factory_install. In addition, the BVT tests all pass running on
a dm-verity root.
[I will send a mail to the chromium-os-dev once this lands with instructions on how to build with it and how to turn it off (chromeos-setimage) on an installed machine.]
Once this is functioning, I will start migrating the build/install process over to use the UUID-based boot.
TEST=built x86-generic, mod'd for test, installed, ran suite_BuildVerify
BUG=chromium-os:5100
Review URL: http://codereview.chromium.org/3143025
Change-Id: Ib23962b7a5e034ef6aea31b4361944ba894700c6
Verified rootfs-based factory installers fail because the ROOT_SIZE_BYTES is
updated, but the information is not propagated to the boot.desc which
cros_make_image_bootable uses. The result is that mod_image_for_test
incorrectly appends the rootfs hash even though it is correctly computed.
Random note:
build_kernel_image uses dumpe2fs to compute the size, but
cros_make_image_bootable uses the supplied size. These shouldn't
diverge though the partition size should accomodate the addition of the
hashes.
TODO(wad) Add checking of sizes in cros_make_image_bootable
TEST=x86-generic build image with --enable_rootfs_verification and --factory_install; then put in a machine and it no longer spewed dm-verity hash errors and the root hash checked successfully!
BUG=chromium-os:5100
Review URL: http://codereview.chromium.org/3155025
Change-Id: I174e3661b80d83b25f3af95ff1eb77f634a7e797
Change-Id: I14cd9dc365093c0450210d7853ad5f67ffa0ddd0
BUG=chromium-os:5183
TEST=1) manually built a dev install shim and verified it's only bootable when dev switch is ON
Review URL: http://codereview.chromium.org/3153001
Previously, parallel_emerge only broke counter-plan dependencies if they were
mutually cyclic. This doesn't work, because these deps might be involved in
an unrelated cycle.
To fix this, we break all counter-plan dependencies that are involved in any
cycle. This fixes make_chroot --fast, which currently fails with a deadlock.
Besides the above, I've also added additional cycle-checking to the install
plan generation code so that cyclic dependencies are caught earlier. I also
cleaned up FindCyclesAtNode to be a bit more understandable -- I wasn't 100% sure
that it was actually correct so I cleaned it up so that it was easier for me to
understand that it is in fact correct. Not sure that this part fixes any bugs,
but it's easier for me to analyze the behavior of FindCyclesAtNode now.
TEST=make_chroot --fast (Note that make_chroot --fast is deprecated, but it's
good to fix the cycle cracking anyway.)
BUG=chromium-os:5795
Review URL: http://codereview.chromium.org/3156018
Also, enforce use of cros_generate_update_payload to generate images.
BUG=5771
TEST=Ran ./cros_generate_update_payload to make full update
Review URL: http://codereview.chromium.org/3135024
Change-Id: I407d39ca461bbe609812e2b3bd2a51e67e331659
TEST=manually built a recovery image (non-dev mode, --withnodev) and verified
chromeos-install completed successfully when installing from USB to target HD
Review URL: http://codereview.chromium.org/3174005
Takes effect when you sync/re-enter chroot.
Also, minor non-exhaustive style cleanup of existing code.
BUG=5623
TEST=tried tab completion with ./cros_workon and various options
Change-Id: I46d2eb29205a3a4ce350b82e7eced7f2069095ca
Review URL: http://codereview.chromium.org/3185003
When we pass on --jobs to individual emerge processes, it causes them
to hide their output. This makes it harder to debug why they are
failing or hanging. Example: http://goo.gl/C6Ru
TEST=Made sure that output is shown by emerge processes when --jobs is used.
BUG=chromium-os:5684
Review URL: http://codereview.chromium.org/3168012
The ltp tests don't pass, and take a long time to build. Once they pass,
it'll make sense to add them back. But otherwise, no point waiting for their
long build process to complete.
BUG=none
TEST=Run build_packages --withautotest
Review URL: http://codereview.chromium.org/3121010
This should cut several minutes off the time for build_packages --nousepkg
--showoutput.
TEST=Ran build_packages --showoutput, verified output.
BUG=chromium-os:5647
Review URL: http://codereview.chromium.org/3106008
TEST=Ran cros_mark_all_as_stable with packages and without packages to
mark and had them both succeed with exit code 0.
BUG=5486
Review URL: http://codereview.chromium.org/3179004
Autotest installs stuff to the image via ssh, so there's no need to include
all of this stuff to the image. This saves disk space. Note that
/usr/local/autotest-chrome is currently already excluded from the image
because of a hack in the chrome ebuild, and that /usr/local/autotest is
usually also excluded from the image because autotest is not included
as a dependency of any packages that are installed.
In the factory setting, it looks like the factory has its own code for
installing autotests via rsync. Presumbably, if the factory tests are
managing the autotest directly, they won't want emerge mucking with the
directory as well on the image. Currently, emerge doesn't muck with the same
directory, but we probably want to ensure that it doesn't start doing that in
future to ensure sanity.
TEST=Built images. Modded for factory test. Verified that (a) build directory contains autotests, (b) regular images do not contain autotests; and (c) images modified for factory test do contain autotests
Review URL: http://codereview.chromium.org/3124010
Ugh, it worked on my machine because of my .ssh/config but need to
explicitly specify port for it to work on buildbot.
TBR=sosa
BUG=5532
TEST=This change was in the previous location of cbuilbot.py and working
correctly.
Change-Id: Id53a76bcb5d43c37ac725267864048d833f5a6ee
Review URL: http://codereview.chromium.org/3144005
By default, emerge will pause and beep when it has messages that it wants the
user to see. This beeping is not useful during a parallel merge, so we turn it
off.
TEST=Ran parallel_emerge udev. It stopped beeping and completed faster.
BUG=none
Review URL: http://codereview.chromium.org/3080005
TEST=Ran locally outside of chroot. Required change to remove Exception OSError as
e because "as" is a Python 2.6'ism
Review URL: http://codereview.chromium.org/3146001
* Only run the regenerate once, after start
* Make regenerate preserve old projects from local manifest
* Make pkgname not found a non-fatal error
* Delete misc debug messages
modified: cros_workon
Review URL: http://codereview.chromium.org/3115001
This script wraps the old memento udpate generator and the new delta
updater. It will also generate new-style full updates soon, which are
full updates that use the delta-update format, when that code is ready.
BUG=5248
TEST=ran local script to do full/delta update
Review URL: http://codereview.chromium.org/2873082
BUG=5130
TEST=create a test image, boot it on a device, and run "sudo nsscertutil -d "sql:/etc/fake_root_ca/nssdb" -L -n FakeCert | less". Look at the section of the output marked "Validity:" and make sure the Not Before and Not After sections indicate dates that are 3 weeks apart
Change-Id: I67cf7e71027147f83c1bc916557bc06ef66fa0e0
Review URL: http://codereview.chromium.org/3075025
BUG=none
TEST=run build_image, happen to finish on a time with less than 10 seconds in it, watch the missing 0-padding
Review URL: http://codereview.chromium.org/3050047
BUG=none
TEST=run build_packages on --board=tegra2_dev-board-opengl right now, since binhost hasn't been populated yet.
Review URL: http://codereview.chromium.org/3035058
Copying the .ssh directories within client takes up O(2n) space in
the stateful partition
BUG=none
TEST=reran mod_image_for_test.sh
Review URL: http://codereview.chromium.org/2832079
Also update parallel_emerge to print output in general if you hit
CTRL-C or if a job is running for more than an hour. Also cleanup exit
handling so that emerge exits a bit more cleanly, and so that we don't
hang if emerge throws an Exception.
BUG=none
TEST=Ran ./parallel_emerge --show-output -uDNve chromeos
Review URL: http://codereview.chromium.org/3010056
* This allows to block a list of ebuilds from being uprevved by the PFB
* With little modification, there could be a GUI which allows people to manage
a blacklist on the server, with stating the reason
(ex.: autotest-tests - $me, creating the ebuild, unstable for now)
modified: cros_mark_all_as_stable
TEST=
1) create a blacklist:
chromeos-base/autotest
chromeos-base/autotest-tests
2) run ./cros_mark_all_as_stable --board=x86-generic
...
INFO : chromeos-base/autotest blacklisted, skipping
INFO : chromeos-base/autotest-tests blacklisted, skipping
...
Review URL: http://codereview.chromium.org/3076038
* Also changes the way how "new workflow" is detected in run_remote_tests.sh
modified: autotest_run.sh
modified: run_remote_tests.sh
Review URL: http://codereview.chromium.org/3048051
Using git-cl push requires setting up Rietveld authentication
cookies on the bots. This is non-trivial. So instead just use
git. This removes a point of failure.
BUG=5258
TEST=Verified by successfully pushing.
Change-Id: Ic3cd68f2d2a9cc59bbe69270896172ee4a418226
Review URL: http://codereview.chromium.org/3015061
Change-Id: I7d17db3cb522a52ec2dac688f4bf83fb5ae6a2d1
related CL: http://codereview.chromium.org/3031049/show
TEST=(1)Manually built an image using build_image script, which exercised "build_gpt.sh"; (2) manually built a Qemu VM image using "image_to_vm.sh" and verified the VM is bootable (up to login screen); (3) manually built a dev recovery image using "mod_image_for_dev_recovery.sh" and verified image functions properly for dev recovery purpose
Review URL: http://codereview.chromium.org/3050039
Change-Id: I43f88cbe4df74e254299a95c5e1b62a300230385
Undo part of commit by drewry
http://chromiumos-git/?p=crosutils.git;a=commit;h=7ab698d713bcad066f0ee0469fbbcaa274411d08
mod_image_for_dev_recovery.sh modifies a dev install shim image (already
bootable) by altering content of its stateful partition. The result image does
NOT need to be made bootable again.
TEST=manually built a dev recovery image (based on a factory install shim) and
verified recovery functionality on agz device with cros fw
Review URL: http://codereview.chromium.org/3074037
Adds arm_extra_bootargs to boot.desc and to cros_make_image_bootable.
TEST=tegra2 dev-board build_packages, build_image --fast worked
BUG=broken tree
Change-Id: Ifdfeda66f1eb5e5b1e618706eeba269f31fa9913
Review URL: http://codereview.chromium.org/3069031