forked from flatcar/scripts
-
Notifications
You must be signed in to change notification settings - Fork 0
/
boot_nspawn
executable file
·31 lines (24 loc) · 920 Bytes
/
boot_nspawn
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
#!/bin/bash
# Copyright (c) 2013 The CoreOS Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
if [[ ! -d /sys/fs/cgroup/systemd ]] || ! systemctl >/dev/null; then
echo "This script must be run in a systemd based environment."
echo "Namely not inside the cros_sdk chroot and not on Ubuntu."
exit 1
fi
SCRIPT_ROOT=$(dirname $(readlink -f "$0"))
. "${SCRIPT_ROOT}/common.sh" || exit 1
DEFINE_string board "${DEFAULT_BOARD}" \
"The board to build root to boot."
FLAGS "$@" || exit 1
if [[ -z "${FLAGS_board}" ]]; then
echo "Error: --board is required."
exit 1
fi
BOARD="${FLAGS_board}"
ROOT="${DEFAULT_CHROOT_DIR}/build/${BOARD}"
STATE="${ROOT}-STATE"
[ -d "$STATE" ] || sudo mkdir -p "$STATE"
sudo systemd-nspawn --boot --read-only --machine="$HOSTNAME-$BOARD" \
--directory="$ROOT" --bind="$STATE:/media/state"