This patch enable drm-lease-test image that based on container manager.
Bug-AGL: SPEC-5308
Change-Id: I7301901d2ab0331a70dc031363c4133cea0bc532
Signed-off-by: Naoto Yamaguchi <naoto.yamaguchi@aisin.co.jp>
--- /dev/null
+IMAGE_INSTALL:append = " \
+ linux-firmware-rtl8822 \
+ linux-firmware-rtl8125 \
+ rockchip-libmali-firmware \
+"
--- /dev/null
+{
+ "name": "cluster-demo"
+}
--- /dev/null
+{
+ "name": "drm-lease-test-cluster",
+ "role": "cluster",
+ "base": {
+ "autoboot": true,
+ "bootpriority": 1,
+ "rootfs": {
+ "path": "/opt/container/guests/drm-lease-test-cluster/rootfs",
+ "mode": "rw",
+ "hostpath": [
+ "/var/lib/machines/guest1"
+ ]
+ },
+ "lifecycle": {
+ "halt": "SIGRTMIN+3",
+ "reboot": "SIGTERM",
+ "timeout": 5000
+ },
+ "cap": {
+ "drop": "sys_module mac_admin mac_override sys_time",
+ "keep": ""
+ },
+ "environment": [
+ "HOME=/home/root"
+ ]
+ },
+ "fs": {
+ "mount": [
+ {
+ "type": "filesystem",
+ "from": "tmpfs",
+ "to": "run",
+ "fstype": "tmpfs",
+ "option": "defaults 0 0"
+ },
+ {
+ "type": "directory",
+ "from": "/sys/kernel/security",
+ "to": "sys/kernel/security",
+ "fstype": "none",
+ "option": "ro,bind,optional 0 0"
+ },
+ {
+ "type": "directory",
+ "from": "/run/drm-lease-manager/lease-cluster",
+ "to": "var/display/drm-lease-manager/lease",
+ "fstype": "none",
+ "option": "bind,create=file"
+ },
+ {
+ "type": "directory",
+ "from": "/run/dlt",
+ "to": "run/dlt",
+ "fstype": "none",
+ "option": "bind,optional,create=dir"
+ }
+ ]
+ },
+ "device": {
+ "static": [
+ {
+ "type": "devdir",
+ "from": "/dev/dri",
+ "to": "dev/dri",
+ "devnode": "/dev/dri/card0",
+ "optional": 0,
+ "wideallow": 1,
+ "exclusive": 0
+ },
+ {
+ "type": "devnode",
+ "from": "/dev/mali0",
+ "to": "dev/mali0",
+ "devnode": "/dev/mali0",
+ "optional": 0,
+ "wideallow": 0,
+ "exclusive": 0
+ }
+ ]
+ },
+ "network": {
+ "static": [
+ {
+ "type": "veth",
+ "param": {
+ "name": "veth0",
+ "link": "lxcbr0",
+ "flags": "up",
+ "hwaddr": "00:16:3e:xx:xx:xx",
+ "mode": "bridge"
+ }
+ }
+ ]
+ }
+}
--- /dev/null
+[Manager]
+#DefaultEnvironment =
--- /dev/null
+DESCRIPTION = "Container Manager config for drm lease test cluster"
+LICENSE = "BSD-3-Clause"
+LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/BSD-3-Clause;md5=550794465ba0ec5312d6919e203a55f9"
+
+
+SRC_URI = "file://drm-lease-test-cluster.json \
+ file://system.conf.drm-lease-test-cluster.in \
+ "
+
+inherit cm-config
+
+do_install:append() {
+ install -Dm644 ${WORKDIR}/drm-lease-test-cluster.json ${D}/opt/container/conf/drm-lease-test-cluster.json
+ install -d ${D}/opt/container/guests/drm-lease-test-cluster/rootfs
+ install -d ${D}/opt/container/guests/drm-lease-test-cluster/nv
+ install -d ${D}/opt/container/guests/drm-lease-test-cluster/shmounts
+}
+
+PACKAGE_ARCH = "${MACHINE_ARCH}"
+
+FILES:${PN} += " \
+ /opt/container/conf/* \
+ /opt/container/guests/drm-lease-test-cluster/* \
+ "
+
--- /dev/null
+{
+ "name": "agl-momi-ivi-demo"
+}
--- /dev/null
+{
+ "name": "drm-lease-test-ivi",
+ "role": "ivi",
+ "base": {
+ "autoboot": true,
+ "bootpriority": 10,
+ "rootfs": {
+ "path": "/opt/container/guests/drm-lease-test-ivi/rootfs",
+ "mode": "rw",
+ "hostpath": [
+ "/var/lib/machines/guest2"
+ ]
+ },
+ "lifecycle": {
+ "halt": "SIGRTMIN+3",
+ "reboot": "SIGTERM",
+ "timeout": 15000
+ },
+ "cap": {
+ "drop": "sys_module mac_admin mac_override",
+ "keep": ""
+ },
+ "environment": [
+ "PIPEWIRE_RUNTIME_DIR=/var",
+ "HOME=/home/root"
+ ]
+ },
+ "fs": {
+ "mount": [
+ {
+ "type": "filesystem",
+ "from": "tmpfs",
+ "to": "run",
+ "fstype": "tmpfs",
+ "option": "defaults 0 0"
+ },
+ {
+ "type": "directory",
+ "from": "/sys/kernel/security",
+ "to": "sys/kernel/security",
+ "fstype": "none",
+ "option": "ro,bind,optional 0 0"
+ },
+ {
+ "type": "directory",
+ "from": "/run/udev/data",
+ "to": "run/udev/data",
+ "fstype": "none",
+ "option": "ro,bind,optional,create=dir"
+ },
+ {
+ "type": "directory",
+ "from": "/run/drm-lease-manager/lease-ivi",
+ "to": "var/display/drm-lease-manager/lease",
+ "fstype": "none",
+ "option": "bind,create=file"
+ },
+ {
+ "type": "directory",
+ "from": "/run/dlt",
+ "to": "run/dlt",
+ "fstype": "none",
+ "option": "bind,optional,create=dir"
+ }
+ ]
+ },
+ "device": {
+ "static": [
+ {
+ "type": "devdir",
+ "from": "/dev/dri",
+ "to": "dev/dri",
+ "devnode": "/dev/dri/card0",
+ "optional": 0,
+ "wideallow": 1,
+ "exclusive": 0
+ },
+ {
+ "type": "devdir",
+ "from": "/dev/input",
+ "to": "dev/input",
+ "devnode": "/dev/input/event0",
+ "optional": 1,
+ "wideallow": 1,
+ "exclusive": 0
+ },
+ {
+ "type": "devdir",
+ "from": "/dev/snd",
+ "to": "dev/snd",
+ "devnode": "/dev/snd/controlC0",
+ "optional": 1,
+ "wideallow": 1,
+ "exclusive": 0
+ },
+ {
+ "type": "devnode",
+ "from": "/dev/mali0",
+ "to": "dev/mali0",
+ "devnode": "/dev/mali0",
+ "optional": 0,
+ "wideallow": 0,
+ "exclusive": 0
+ }
+ ]
+ },
+ "network": {
+ "static": [
+ {
+ "type": "veth",
+ "param": {
+ "name": "eth0",
+ "link": "lxcbr0",
+ "flags": "up",
+ "hwaddr": "00:16:3e:xx:xx:xx",
+ "mode": "bridge"
+ }
+ }
+ ]
+ }
+}
--- /dev/null
+[Manager]
+#DefaultEnvironment =
--- /dev/null
+DESCRIPTION = "Container Manager config for drm lease test ivi"
+LICENSE = "BSD-3-Clause"
+LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/BSD-3-Clause;md5=550794465ba0ec5312d6919e203a55f9"
+
+SRC_URI = "file://drm-lease-test-ivi.json \
+ file://system.conf.drm-lease-test-ivi.in \
+ "
+
+inherit cm-config
+
+do_install:append() {
+ install -Dm644 ${WORKDIR}/drm-lease-test-ivi.json ${D}/opt/container/conf/drm-lease-test-ivi.json
+ install -d ${D}/opt/container/guests/drm-lease-test-ivi/rootfs
+ install -d ${D}/opt/container/guests/drm-lease-test-ivi/nv
+ install -d ${D}/opt/container/guests/drm-lease-test-ivi/shmounts
+}
+
+PACKAGE_ARCH = "${MACHINE_ARCH}"
+
+FILES:${PN} += " \
+ /opt/container/conf/* \
+ /opt/container/guests/drm-lease-test-ivi/* \
+ "
--- /dev/null
+[Unit]
+Description=Image mount for drl-lease-test-cluster
+
+[Mount]
+What=/var/lib/machines/guest-image-drm-lease-test-cluster.ext4
+Where=/var/lib/machines/guest1
+Type=ext4
+Options=rw
+
+[Install]
+WantedBy=local-fs.target
--- /dev/null
+SUMMARY = "AGL CI guest image mounter for drm-lease-test-cluster."
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/MIT;md5=0835ade698e0bcf8506ecda2f7b4f302"
+
+SRC_URI += " \
+ file://drm-lease-test-cluster.mount \
+"
+
+inherit systemd
+
+SYSTEMD_PACKAGES = "${PN}"
+SYSTEMD_SERVICE:${PN} = "var-lib-machines-guest1.mount"
+SYSTEMD_AUTO_ENABLE:${PN} = "enable"
+
+do_install:append () {
+ install -d ${D}${systemd_system_unitdir}
+ install -m 0644 ${WORKDIR}/drm-lease-test-cluster.mount ${D}${systemd_system_unitdir}/var-lib-machines-guest1.mount
+ install -d ${D}/var/lib/machines/guest1
+}
+
+FILES:${PN} += " \
+ ${systemd_system_unitdir} \
+ /var/lib/machines/* \
+"
--- /dev/null
+[Unit]
+Description=Image mount for drl-lease-test-cluster
+
+[Mount]
+What=/var/lib/machines/guest-image-drm-lease-test-ivi.ext4
+Where=/var/lib/machines/guest2
+Type=ext4
+Options=rw
+
+[Install]
+WantedBy=local-fs.target
--- /dev/null
+SUMMARY = "AGL CI guest image mounter for drm-lease-test-ivi."
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/MIT;md5=0835ade698e0bcf8506ecda2f7b4f302"
+
+SRC_URI += " \
+ file://drm-lease-test-ivi.mount \
+"
+
+inherit systemd
+
+SYSTEMD_PACKAGES = "${PN}"
+SYSTEMD_SERVICE:${PN} = "var-lib-machines-guest2.mount"
+SYSTEMD_AUTO_ENABLE:${PN} = "enable"
+
+do_install:append () {
+ install -d ${D}${systemd_system_unitdir}
+ install -m 0644 ${WORKDIR}/drm-lease-test-ivi.mount ${D}${systemd_system_unitdir}/var-lib-machines-guest2.mount
+ install -d ${D}/var/lib/machines/guest2
+}
+
+FILES:${PN} += " \
+ ${systemd_system_unitdir} \
+ /var/lib/machines/* \
+"
LICENSE = "MIT"
require lxc-host-image-minimal.bb
-require recipes-platform/images/agl-lxc-install-single-image.inc
-require recipes-platform/images/agl-lxc-autostart.inc
+require recipes-platform/images/agl-lxc-multiconfig-build.inc
CONTAINER_IMAGES ?= "agl-container-ivi:guest-image-drm-lease-test-ivi \
agl-container-cluster:guest-image-drm-lease-test-cluster \
# packages required for network bridge settings via lxc-net
IMAGE_INSTALL += " \
+ container-manager \
+ cm-config-drm-lease-test-cluster image-mount-drm-lease-test-cluster \
+ cm-config-drm-lease-test-ivi image-mount-drm-lease-test-ivi \
lxc-networking \
iptables-modules \
dnsmasq \
kernel-module-xt-multiport \
"
+install_container_images() {
+ for c in ${CONTAINER_IMAGES}; do
+ config=${c%:*}
+ image=${c#*:}
+ name=${image#guest-image-}
+ src="${TOPDIR}/tmp-${config}/deploy/images/${MACHINE}/${image}-${MACHINE}${MACHINE_SUFFIX}${IMAGE_NAME_SUFFIX}.ext4"
+ bbnote "Installing ${src}"
+ install -Dm644 ${src} ${IMAGE_ROOTFS}/var/lib/machines/${image}.ext4
+ done
+}
+
+ROOTFS_POSTPROCESS_COMMAND += "install_container_images; "
+
+
# Under the this line, shall describe machine specific package.
IMAGE_INSTALL:append:rcar-gen3 = " kernel-module-gles gles-user-module-firmware"