mirror of
https://chromium.googlesource.com/crosvm/crosvm
synced 2025-02-06 18:38:01 +00:00
af0144e51b
We need to download a base image anyway, so we might as well make that a full prebuilt of our VM image. This makes the initial startup of ./tools/aarch64vm significantly faster. It also makes it easier to add the prebuilt into a Docker dev container later. Also move the VM data into the cargo target dir so we do not dirty the src dir. A Makefile for building and uploading the prebuilt has been added. This change also moved the testvm code from ./tools/testvm into ./tools/impl so the python code can be shared with future scripts (relative imports from other folders are tricky in Python). BUG=b:199951064 TEST=./tools/aarch64vm ssh Change-Id: I3fb57bfb8f7330b765e9be5ded821615ecddd841 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/crosvm/+/3221704 Tested-by: kokoro <noreply+kokoro@google.com> Commit-Queue: Dennis Kempin <denniskempin@google.com> Reviewed-by: Daniel Verkamp <dverkamp@chromium.org>
55 lines
2.1 KiB
YAML
55 lines
2.1 KiB
YAML
#cloud-config
|
|
#
|
|
# This file is responsible for setting up the test VM when it is first booted.
|
|
# See https://cloudinit.readthedocs.io/ for details.
|
|
|
|
users:
|
|
- name: crosvm
|
|
sudo: ALL=(ALL) NOPASSWD:ALL
|
|
lock_passwd: False
|
|
shell: /bin/bash
|
|
# Hashed password is 'crosvm'
|
|
passwd: $6$rounds=4096$os6Q9Ok4Y9a8hKvG$EwQ1bbS0qd4IJyRP.bnRbyjPbSS8BwxEJh18PfhsyD0w7a4GhTwakrmYZ6KuBoyP.cSjYYSW9wYwko4oCPoJr.
|
|
# Pubkey for `id_rsa`
|
|
ssh_authorized_keys:
|
|
- ssh-rsa
|
|
AAAAB3NzaC1yc2EAAAADAQABAAABgQCYan8oXtUm6WTIClGMsfEf3hmJe+T8p08t9O8StuuDHyAtl1lC+8hOcuXTNvbc52/HNdZ5EO4ZpP3n+N6XftfXFWQanI8OrIHVpsMATMnofHE9RBHWcR/gH0V3xKnXcTvo3S0T3ennfCYxjtL7l7EvHDMdacX8NFOaARH92qJd/YdFp73mqykmc81OCZ4ToQ5s+20T7xvRzedksfSj/wIx3z8BJK9iovkQhNGFd1o557Vq1g3Bxk1PbcIUAvFPl0SwwlFfHBi2M9kZgCVa8UfokBzu77zvxWFud+MXVrfralwKV88k9Cy9FL5QGbtCiZ7RDP5pf69xapKBK+z2L+zuVlSkvaB1CcXuqqVDjD84LXEA+io0peXQcsqbAfbLo0666P7JsweCyQ07qc4AM8gv52SzFuQTIuHLciYxbPgkZTieKgmQLJ1EgfJelOG/+60XC24LbzPIAQxcO83erC/SQ3mTUizu6BueJt7LD1V6vXHcjLfE19FecIJ8U0XDaDU=
|
|
crosvm@localhost
|
|
groups: kvm, disk, tty
|
|
|
|
preserve_hostname: true
|
|
|
|
# Runtime dependencies of crosvm binaries.
|
|
# Note: Keep in sync with ./install-[aarch64-]deps.sh
|
|
packages:
|
|
- libcap2
|
|
- libdbus-1-3
|
|
- libdrm2
|
|
- libepoxy0
|
|
- libssl1.1
|
|
- libwayland-client0
|
|
- libx11-6
|
|
- libxext6
|
|
- rsync
|
|
|
|
# Commands to run once during setup
|
|
runcmd:
|
|
# Append arch to hostname to make the VM easier to identify.
|
|
- echo "testvm-$(arch)" > /etc/hostname
|
|
- echo 127.0.0.1 testvm-$(arch) >> /etc/hosts
|
|
|
|
# Enable core dumps for debugging crashes
|
|
- echo "* soft core unlimited" > /etc/security/limits.conf
|
|
|
|
# Trim some fat
|
|
- [apt-get, remove, --yes, vim-runtime, iso-codes, perl, grub-common]
|
|
- [apt-get, autoremove, --yes]
|
|
- [apt-get, clean, --yes]
|
|
- [rm, -rf, /var/lib/apt/lists]
|
|
|
|
# Fill empty space with zeros, so the image can be sparsified.
|
|
- [dd, if=/dev/zero, of=/mytempfile]
|
|
- [rm, /mytempfile]
|
|
|
|
# And shut down after first boot setup is done.
|
|
- [poweroff]
|