public inbox for isar-users@googlegroups.com
 help / color / mirror / Atom feed
From: "Maxim Yu. Osipov" <mosipov@ilbers.de>
To: isar-users@googlegroups.com
Subject: [PATCH 1/2] meta-isar: Separate images per MACHINE
Date: Tue, 12 Mar 2019 21:27:12 +0100	[thread overview]
Message-ID: <20190312202713.18792-1-mosipov@ilbers.de> (raw)

Image directory gets overwritten when running for two targets
with the same pair DISTRO and DISTRO_ARCH, resulting
start_vm script failure.

Note:
This patch affects the bitbake multiconfig target calling syntax:
PREVIOUS: "multiconfig:$MACHINE-$DISTRO:isar-image-base"
NEW: "multiconfig:$MACHINE-$DISTRO:isar-image-base-$MACHINE"

Suggested-by: Jan Kiszka <jan.kiszka@siemens.com>
Signed-off-by: Maxim Yu. Osipov <mosipov@ilbers.de>
---
 meta-isar/conf/conf-notes.txt                    |  6 ++--
 meta-isar/recipes-core/images/isar-image-base.bb |  2 ++
 meta-isar/recipes-core/images/isar-image-ubi.bb  |  2 ++
 scripts/ci_build.sh                              | 40 ++++++++++++------------
 scripts/start_vm                                 | 16 +++++-----
 5 files changed, 35 insertions(+), 31 deletions(-)

diff --git a/meta-isar/conf/conf-notes.txt b/meta-isar/conf/conf-notes.txt
index 87bd2dc..84049e1 100644
--- a/meta-isar/conf/conf-notes.txt
+++ b/meta-isar/conf/conf-notes.txt
@@ -1,4 +1,4 @@
 Common targets are:
-    multiconfig:qemuarm-stretch:isar-image-base
-    multiconfig:qemuamd64-stretch:isar-image-base
-    multiconfig:rpi-jessie:isar-image-base
+    multiconfig:qemuarm-stretch:isar-image-base-qemuarm
+    multiconfig:qemuamd64-stretch:isar-image-base-qemuamd64
+    multiconfig:rpi-jessie:isar-image-base-rpi
diff --git a/meta-isar/recipes-core/images/isar-image-base.bb b/meta-isar/recipes-core/images/isar-image-base.bb
index c86e63b..0ac0c44 100644
--- a/meta-isar/recipes-core/images/isar-image-base.bb
+++ b/meta-isar/recipes-core/images/isar-image-base.bb
@@ -11,3 +11,5 @@ LIC_FILES_CHKSUM = "file://${LAYERDIR_core}/licenses/COPYING.GPLv2;md5=751419260
 PV = "1.0"
 
 inherit isar-image
+
+PN .= "-${MACHINE}"
diff --git a/meta-isar/recipes-core/images/isar-image-ubi.bb b/meta-isar/recipes-core/images/isar-image-ubi.bb
index 4b7e109..8059105 100644
--- a/meta-isar/recipes-core/images/isar-image-ubi.bb
+++ b/meta-isar/recipes-core/images/isar-image-ubi.bb
@@ -12,6 +12,8 @@ LIC_FILES_CHKSUM = "file://${LAYERDIR_core}/licenses/COPYING.GPLv2;md5=751419260
 
 inherit isar-image
 
+PN .= "-${MACHINE}"
+
 SRC_URI += "file://ubinize.cfg.tmpl \
             file://fitimage.its.tmpl"
 
diff --git a/scripts/ci_build.sh b/scripts/ci_build.sh
index bcc7545..b4df70e 100755
--- a/scripts/ci_build.sh
+++ b/scripts/ci_build.sh
@@ -1,7 +1,7 @@
 # Script for CI system build
 #
 # Alexander Smirnov <asmirnov@ilbers.de>
-# Copyright (c) 2016-2018 ilbers GmbH
+# Copyright (c) 2016-2019 ilbers GmbH
 
 #!/bin/sh
 
@@ -21,21 +21,21 @@ BUILD_DIR=./build
 BB_ARGS="-v"
 
 TARGETS_SET="\
-            multiconfig:qemuarm-jessie:isar-image-base \
-            multiconfig:qemuarm-stretch:isar-image-base \
-            multiconfig:qemuarm-buster:isar-image-base \
-            multiconfig:qemuarm64-stretch:isar-image-base \
-            multiconfig:qemui386-jessie:isar-image-base \
-            multiconfig:qemui386-stretch:isar-image-base \
-            multiconfig:qemui386-buster:isar-image-base \
-            multiconfig:qemuamd64-jessie:isar-image-base \
-            multiconfig:qemuamd64-stretch:isar-image-base \
-            multiconfig:qemuamd64-buster:isar-image-base \
-            multiconfig:qemuamd64-buster-tgz:isar-image-base \
-            multiconfig:nand-ubi-demo-buster:isar-image-ubi \
-            multiconfig:rpi-jessie:isar-image-base"
+            multiconfig:qemuarm-jessie:isar-image-base-qemuarm \
+            multiconfig:qemuarm-stretch:isar-image-base-qemuarm \
+            multiconfig:qemuarm-buster:isar-image-base-qemuarm \
+            multiconfig:qemuarm64-stretch:isar-image-base-qemuarm64 \
+            multiconfig:qemui386-jessie:isar-image-base-qemui386 \
+            multiconfig:qemui386-stretch:isar-image-base-qemui386 \
+            multiconfig:qemui386-buster:isar-image-base-qemui386 \
+            multiconfig:qemuamd64-jessie:isar-image-base-qemuamd64 \
+            multiconfig:qemuamd64-stretch:isar-image-base-qemuamd64 \
+            multiconfig:qemuamd64-buster:isar-image-base-qemuamd64 \
+            multiconfig:qemuamd64-buster-tgz:isar-image-base-qemuamd64 \
+            multiconfig:nand-ubi-demo-buster:isar-image-ubi-nand-ubi-demo \
+            multiconfig:rpi-jessie:isar-image-base-rpi"
           # qemu-user-static of <= buster too old to build that
-          # multiconfig:qemuarm64-buster:isar-image-base
+          # multiconfig:qemuarm64-buster:isar-image-base-qemuarm64
 
 
 show_help() {
@@ -85,9 +85,9 @@ do
         FAST_BUILD="1"
         CROSS_BUILD="1"
         TARGETS_SET="\
-                     multiconfig:qemuarm-stretch:isar-image-base \
-                     multiconfig:qemuarm64-stretch:isar-image-base \
-                     multiconfig:qemuamd64-stretch:isar-image-base"
+                     multiconfig:qemuarm-stretch:isar-image-base-qemuarm \
+                     multiconfig:qemuarm64-stretch:isar-image-base-qemuarm64 \
+                     multiconfig:qemuamd64-stretch:isar-image-base-qemuamd64 "
         ;;
     -q|--quiet)
         BB_ARGS=""
@@ -129,12 +129,12 @@ bitbake $BB_ARGS $TARGETS_SET
 # parallel build with the same target arch (armhf) fails.
 # The problem is being investigated
 if [ -n "$FAST_BUILD" ]; then
-    bitbake $BB_ARGS multiconfig:de0-nano-soc-stretch:isar-image-base
+    bitbake $BB_ARGS multiconfig:de0-nano-soc-stretch:isar-image-base-de0-nano-soc
 fi
 
 cp -a "${ISARROOT}/meta/classes/dpkg-base.bbclass" "${ISARROOT}/meta/classes/dpkg-base.bbclass.ci-backup"
 echo -e "do_fetch_append() {\n\n}" >> "${ISARROOT}/meta/classes/dpkg-base.bbclass"
 
-bitbake $BB_ARGS multiconfig:qemuamd64-stretch:isar-image-base
+bitbake $BB_ARGS multiconfig:qemuamd64-stretch:isar-image-base-qemuamd64
 
 mv "${ISARROOT}/meta/classes/dpkg-base.bbclass.ci-backup" "${ISARROOT}/meta/classes/dpkg-base.bbclass"
diff --git a/scripts/start_vm b/scripts/start_vm
index 1da0742..0c007bf 100755
--- a/scripts/start_vm
+++ b/scripts/start_vm
@@ -1,7 +1,7 @@
 #!/bin/sh
 #
 # This software is a part of ISAR.
-# Copyright (C) 2015-2017 ilbers GmbH
+# Copyright (C) 2015-2019 ilbers GmbH
 
 set -e
 
@@ -46,7 +46,7 @@ show_help() {
     echo "                          Supported: arm, i386, amd64, arm64."
     echo "    -b, --build BUILD     set path to build directory."
     echo "    -d, --distro DISTRO   set isar Debian distribution."
-    echo "                          Supported: jessie, stretch."
+    echo "                          Supported: jessie, stretch, buster"
     echo "    -o, --out FILE        Route QEMU console output to"
     echo "                          specified file."
     echo "    -p, --pid FILE        Store QEMU pid to file."
@@ -101,7 +101,7 @@ do
     shift
 done
 
-eval $(bitbake -e multiconfig:qemu$ARCH-$DISTRO:isar-image-base | grep "^DEPLOY_DIR_IMAGE=")
+eval $(bitbake -e multiconfig:qemu$ARCH-$DISTRO:isar-image-base-qemu$ARCH | grep "^DEPLOY_DIR_IMAGE=")
 readonly IMAGE_DIR=$DEPLOY_DIR_IMAGE
 
 readonly ISARROOT="$(dirname "$0")"/..
@@ -112,13 +112,13 @@ eval "$(egrep 'MACHINE_SERIAL' $MACHINE_CONF |bb2sh)"
 readonly CONFIG_CONF=$ISARROOT/meta-isar/conf/multiconfig/qemu$ARCH-$DISTRO.conf
 eval "$(egrep 'QEMU_' $CONFIG_CONF |bb2sh)"
 
-eval $(bitbake -e multiconfig:qemu$ARCH-$DISTRO:isar-image-base | grep "^IMAGE_TYPE=")
+eval $(bitbake -e multiconfig:qemu$ARCH-$DISTRO:isar-image-base-qemu$ARCH | grep "^IMAGE_TYPE=")
 case "$IMAGE_TYPE" in
     ext4-img)
-    readonly ROOTFS_IMAGE=isar-image-base-debian-$DISTRO-qemu$ARCH.ext4.img
+    readonly ROOTFS_IMAGE=isar-image-base-qemu$ARCH-debian-$DISTRO-qemu$ARCH.ext4.img
 
-    eval $(bitbake -e multiconfig:qemu$ARCH-$DISTRO:isar-image-base | grep "^KERNEL_IMAGE=")
-    eval $(bitbake -e multiconfig:qemu$ARCH-$DISTRO:isar-image-base | grep "^INITRD_IMAGE=")
+    eval $(bitbake -e multiconfig:qemu$ARCH-$DISTRO:isar-image-base-qemu$ARCH | grep "^KERNEL_IMAGE=")
+    eval $(bitbake -e multiconfig:qemu$ARCH-$DISTRO:isar-image-base-qemu$ARCH | grep "^INITRD_IMAGE=")
     QKERNEL=$IMAGE_DIR/${KERNEL_IMAGE}
     QINITRD=/dev/null
     [ -n "$INITRD_IMAGE" ] && QINITRD=$IMAGE_DIR/${INITRD_IMAGE}
@@ -128,7 +128,7 @@ case "$IMAGE_TYPE" in
     KARGS="console=$MACHINE_SERIAL root=/dev/$QEMU_ROOTFS_DEV rw"
     ;;
     wic-img)
-    readonly ROOTFS_IMAGE=isar-image-base-debian-$DISTRO-qemu$ARCH.wic.img
+    readonly ROOTFS_IMAGE=isar-image-base-qemu$ARCH-debian-$DISTRO-qemu$ARCH.wic.img
     EXTRA_ARGS="$EXTRA_ARGS -snapshot"
     ;;
     *)
-- 
2.11.0


             reply	other threads:[~2019-03-12 20:27 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-03-12 20:27 Maxim Yu. Osipov [this message]
2019-03-12 20:27 ` [PATCH 2/2] doc/user_manual: Update after images per machine separation Maxim Yu. Osipov
2019-03-14  7:14   ` Jan Kiszka
2019-03-14 11:31     ` Baurzhan Ismagulov
2019-03-14 12:08       ` Jan Kiszka
2019-03-13 16:42 ` [PATCH 1/2] meta-isar: Separate images per MACHINE Maxim Yu. Osipov
2019-03-14  7:15   ` Jan Kiszka
2019-03-14  7:21   ` Claudius Heine
2019-03-14  7:28     ` Jan Kiszka
2019-03-14  8:07       ` Claudius Heine
2019-03-14  8:20         ` Claudius Heine
2019-03-14 12:22           ` Claudius Heine
2019-03-15  9:02     ` Maxim Yu. Osipov
2019-03-15 10:25       ` Claudius Heine
2019-03-15 11:22         ` Maxim Yu. Osipov
2019-03-15 14:28         ` Baurzhan Ismagulov

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20190312202713.18792-1-mosipov@ilbers.de \
    --to=mosipov@ilbers.de \
    --cc=isar-users@googlegroups.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox