./aem.sh init # can specify --depth=1
vim aem-cfg.sh # edit repo URL, branches, device files, list of files to copy
./aem.sh build
./aem.sh update # generates helper script
# put files that will be sent to the DUT in webroot/
cp somewhere/{grub.cfg,bzImage,initramfs.cpio} webroot
./aem.sh serve # starts the server and exists
Example grub.cfg
is in the current directory (here).
Minimal bzImage
and initramfs.cpio
can be found in
http://boot.3mdeb.com/tb/mb2/. Full kernel and initramfs from most
distributions should also work, as long as they are built for Xen.
Rebuild everything:
./aem.sh build
# the server is still running, this just updates list of grub modules or
# regenerates the helper script
./aem.sh update
Rebuild only GRUB:
./aem.sh build grub
./aem.sh update # skip this if you didn't add/remove GRUB modules
Rebuild only Xen:
./aem.sh build xen
wget -O - 10.0.2.2:8080 | bash -
Remove everything but config and your files in webroot/:
./aem.sh purge
The server is stopped automatically if it was still running.
You can put the script in $PATH
or call it outside of the directory it resides
in in current way. This enables creation of multiple independent workspaces.
Could be useful for working with several branches of projects.
The script downloaded via wget
on DUT is generated by aem.sh
. So all your
edits will be lost on the next ./aem.sh serve on
or ./aem.sh serve update
command.