die() { eerror "$*"; exit 1; }
set -e
-cd "${HOME}/trunk/src/scripts/"
+BASE="/mnt/host/source"
+BUILD_DIR="${BASE}/src/build"
+cd "${BASE}/src/scripts/"
: "${BOARD:="$(cat .default_board 2>/dev/null)"}"
if [[ -z ${BOARD} ]] ; then
die "missing BOARD"
fi
-IMAGES="${HOME}/trunk/src/build/images/${BOARD}"
+IMAGES="${BASE}/src/build/images/${BOARD}"
BUILD="/build/${BOARD}"
usage() {
EOF
}
+find_first_removable() {
+ local d
+ cd /sys/block
+ for d in sd? ; do
+ if [[ $(cat "${d}/removable" 2>/dev/null) == "1" ]]; then
+ echo "/dev/${d}"
+ return 0
+ fi
+ done
+ return 0
+}
+
ARG_CLEAN=false
-ARG_DEV="/dev/sdd"
+ARG_DEV="$(find_first_removable)"
ARG_DEV_USER=false
ARG_PRETEND=false
ARG_NOPKG=false
einfo "Log root: ${IMAGES}/log."
-run ./update_chroot --toolchain_boards=${BOARD}
+run update_chroot
if ${ARG_CLEAN} || [[ ! -d ${BUILD} ]] ; then
run sudo rm -rf "${BUILD}"
- run ./setup_board --board=${BOARD} --skip_chroot_upgrade
- if [ $? -ne 0 ] ; then
+ run setup_board --board=${BOARD} --skip-chroot-upgrade
+ if [[ $? -ne 0 ]] ; then
run sudo rm -rf "${BUILD}"
exit 1
fi
fi
-run ./build_packages \
+run cros build-packages \
--board=${BOARD} \
--nowithdebug \
--nowithrevdeps \
- --skip_chroot_upgrade \
- $(tfe ${ARG_AUTOTEST} --{,no}withautotest) \
- $(tfe ${ARG_FACTORY} --{,no}withfactory) \
- $(tfe ${ARG_NOPKG} --{no,}usepkg) \
- $(tfe ${ARG_TEST} --{,no}withtest)
-BUILD_IMG="./build_image --board=${BOARD} --noenable_rootfs_verification $(tfe ${ARG_TEST} test) dev"
+ --skip-chroot-upgrade \
+ $(tfe ${ARG_AUTOTEST} --{,no-}withautotest) \
+ $(tfe ${ARG_FACTORY} --{,no-}withfactory) \
+ $(tfe ${ARG_NOPKG} --{no-,}usepkg) \
+ $(tfe ${ARG_TEST} --{,no-}withtest)
+BUILD_IMG="cros build-image --board=${BOARD} --no-enable-rootfs-verification $(tfe ${ARG_TEST} test base)"
run ${BUILD_IMG}
IMG_TO_USB="cros flash --yes usb://${ARG_DEV} xbuddy://local/${BOARD}/latest/dev"
cd "${IMAGES}"
rm -rf $(ls -td1R `find -mindepth 1 -maxdepth 1 -type d` | sed -e 1d -e 2d)
-d="~/trunk/src/scripts"
-BUILD_IMG="${d}/${BUILD_IMG#./}"
cat <<EOF
### LIVE
${IMG_TO_USB}
### KVM
-${d}/image_to_vm.sh --board=${BOARD} --from=../build/images/${BOARD}/latest
-${d}/image_to_vm.sh --board=${BOARD} --from=../build/images/${BOARD}/latest --test_image
-~/chromiumos/src/scripts/bin/cros_start_vm --no_graphics --image_path=\${HOME}/chromiumos/src/build/images/${BOARD}/latest/chromiumos_qemu_image.bin --kvm_cpu "max,vmx=on"
-qemu-system-x86_64 -enable-kvm -cpu max,vmx=on -m 1024 -vga std -net nic,model=virtio -net user,hostfwd=tcp::9222-:22 -hda ~/chromiumos/src/build/images/${BOARD}/latest/chromiumos_qemu_image.bin
-
-https://dev.chromium.org/chromium-os/testing/running-smoke-suite-on-a-vm-image
+cros vm --board=${BOARD} --start --no-display --image-path=\${HOME}/chromiumos/src/build/images/${BOARD}/latest/chromiumos_test_image.bin
/usr/local/autotest/bin/autologin.py
-export CROS_USER_ID_HASH=$(ls /home/user/)
+export CROS_USER_ID_HASH=\$(ls /home/user/)
sudo -u chronos CROS_USER_ID_HASH="${CROS_USER_ID_HASH}" crosh
vmc start termina # might run twice
### RECOVERY
-${d}/mod_image_for_recovery.sh --board=${BOARD}
+~/chromiumos/src/scripts/mod_image_for_recovery.sh --board=${BOARD}
${IMG_TO_USB%/dev}/recovery
### FACTORY
${BUILD_IMG} --factory_install
${IMG_TO_USB} -i factory_install_shim.bin
-
EOF