From mboxrd@z Thu Jan 1 00:00:00 1970 X-GM-THRID: 7239302955540676608 X-Received: by 2002:a2e:bc08:0:b0:2b6:120a:af65 with SMTP id b8-20020a2ebc08000000b002b6120aaf65mr756277ljf.3.1689918847777; Thu, 20 Jul 2023 22:54:07 -0700 (PDT) X-BeenThere: isar-users@googlegroups.com Received: by 2002:a2e:81c4:0:b0:2b9:3527:cb9 with SMTP id s4-20020a2e81c4000000b002b935270cb9ls432634ljg.2.-pod-prod-06-eu; Thu, 20 Jul 2023 22:54:05 -0700 (PDT) X-Google-Smtp-Source: APBJJlEvx62uH88QVDe5Mfcg+qFd1cb/pRIkV9IV0jfOnOQeCIMr8SXsnGkS8Rqm2F4NPCvtwimm X-Received: by 2002:a2e:90da:0:b0:2b6:fe3c:c3c1 with SMTP id o26-20020a2e90da000000b002b6fe3cc3c1mr774427ljg.4.1689918845736; Thu, 20 Jul 2023 22:54:05 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1689918845; cv=none; d=google.com; s=arc-20160816; b=eSZeRiVN/BTYchKsZX0NqpFcea0m3pdKIQscOmY0/zVQpmZOhHdkaJHEWedtdIOwRr 8DDnvaDc9IUQ0dulrzTu1X979hAkGmIz+Lxbxei71GCsuSYj7D98Qk2wf2hPWhMwrpzc j47cUNVHges9nG8AeM9ccWChysd7Usrgp22Bh2UDbGFT1Ej/sqGrSyT5tjixxWqASw/c ikMAE3tBUPLODSBWr8h9XQGWdvTFdDaI0i0C61lV+ieKoJSUnqEOWlzTqVuVl0RvkLIh XddmE3R7zDZazN+3uw5+t+284yJ+it+M+e48R4ShXtspud5/FvMPdzFrAIi5cD6Cqt5I +93A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from; bh=5D5+BA9riZAwJGvztM7WvwmT9/70H3U6m7Wu6JpFVKo=; fh=swRs1+OhWjovx1IrvOlKBWsdq9manB5qdcuGoHoh5Ak=; b=pPgRCByfyWHf93fQsr7OlhdW+n7dUqmO71V0LFUt3AfPscQsQ9DauxuMcC413AS5Em U3WpRP/Cp1KR985WdSzGr+l0zids3LUvE48Q26ncNIRrz57gXWG2tk+q+i6SYX6HzFnP GWzRs5WJ8i94ROgzUBSxLYzwLUljhiuzWGH3I3Zxl1bU9yZljnkUfbktM2hxEJbMuaY3 Q2MbxlAo0ND/ftAiskHj5iW1WNM6pPgMfkXY6o6wLJ87lfS2uSkcRYegA1Gv9YxGtvcw Jb0QUIsmgvBB3JBGiDwCqg2OpGCfA5GsAcrwdeGBtZHotKQNu37Np6K+Kn3+F9Yn/dBE lBdg== ARC-Authentication-Results: i=1; gmr-mx.google.com; spf=pass (google.com: domain of ubely@ilbers.de designates 85.214.156.166 as permitted sender) smtp.mailfrom=ubely@ilbers.de Return-Path: Received: from shymkent.ilbers.de (shymkent.ilbers.de. [85.214.156.166]) by gmr-mx.google.com with ESMTPS id p7-20020a2ea4c7000000b002b81b8865edsi156505ljm.7.2023.07.20.22.54.05 for (version=TLS1_2 cipher=ECDHE-ECDSA-CHACHA20-POLY1305 bits=256/256); Thu, 20 Jul 2023 22:54:05 -0700 (PDT) Received-SPF: pass (google.com: domain of ubely@ilbers.de designates 85.214.156.166 as permitted sender) client-ip=85.214.156.166; Authentication-Results: gmr-mx.google.com; spf=pass (google.com: domain of ubely@ilbers.de designates 85.214.156.166 as permitted sender) smtp.mailfrom=ubely@ilbers.de Received: from baighyz.m.ilbers.de (host-80-81-17-52.static.customer.m-online.net [80.81.17.52]) (authenticated bits=0) by shymkent.ilbers.de (8.15.2/8.15.2/Debian-8+deb9u1) with ESMTPSA id 36L5s2TD027957 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT) for ; Fri, 21 Jul 2023 07:54:04 +0200 From: Uladzimir Bely To: isar-users@googlegroups.com Subject: [PATCH v6 4/9] imager: Split imager deps between image types Date: Fri, 21 Jul 2023 07:53:57 +0200 Message-Id: <20230721055402.13764-5-ubely@ilbers.de> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20230721055402.13764-1-ubely@ilbers.de> References: <20230721055402.13764-1-ubely@ilbers.de> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Status: No, score=-1.0 required=5.0 tests=ALL_TRUSTED autolearn=unavailable autolearn_force=no version=3.4.2 X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on shymkent.ilbers.de X-TUID: LFbe1yyUjcpL From: Anton Mikanovich To reduce dependencies install time and disk space consumption we need to install only those imager dependencies which used in every image type prepare logic. So split variables between tasks. Signed-off-by: Anton Mikanovich --- meta/classes/image-tools-extension.bbclass | 10 ++++++---- meta/classes/image.bbclass | 8 ++++++++ 2 files changed, 14 insertions(+), 4 deletions(-) diff --git a/meta/classes/image-tools-extension.bbclass b/meta/classes/image-tools-extension.bbclass index 04ed1f84..58799fcf 100644 --- a/meta/classes/image-tools-extension.bbclass +++ b/meta/classes/image-tools-extension.bbclass @@ -15,6 +15,8 @@ SCHROOT_MOUNTS = "${WORKDIR}:${PP_WORK} ${IMAGE_ROOTFS}:${PP_ROOTFS} ${DEPLOY_DI SCHROOT_MOUNTS += "${REPO_ISAR_DIR}/${DISTRO}:/isar-apt" imager_run() { + local_install="${@(d.getVar("INSTALL_%s" % d.getVar("BB_CURRENTTASK")) or '').strip()}" + schroot_create_configs insert_mounts @@ -34,8 +36,8 @@ imager_run() { trap 'exit 1' INT HUP QUIT TERM ALRM USR1 trap 'imager_cleanup' EXIT - if [ -n "${@d.getVar("IMAGER_INSTALL").strip()}" ]; then - echo "Installing deps: ${IMAGER_INSTALL}" + if [ -n "${local_install}" ]; then + echo "Installing imager deps: ${local_install}" distro="${BASE_DISTRO}-${BASE_DISTRO_CODENAME}" if [ ${ISAR_CROSS_COMPILE} -eq 1 ]; then @@ -64,13 +66,13 @@ EOF" -o APT::Get::List-Cleanup='0' apt-get -o Debug::pkgProblemResolver=yes --no-install-recommends -y \ --allow-unauthenticated --allow-downgrades --download-only install \ - ${IMAGER_INSTALL}" + ${local_install}" deb_dl_dir_export ${schroot_dir} ${distro} schroot -r -c ${session_id} -d / -u root -- sh -c " \ apt-get -o Debug::pkgProblemResolver=yes --no-install-recommends -y \ --allow-unauthenticated --allow-downgrades install \ - ${IMAGER_INSTALL}" + ${local_install}" fi schroot -r -c ${session_id} "$@" diff --git a/meta/classes/image.bbclass b/meta/classes/image.bbclass index 42e4b0c9..b9d3d411 100644 --- a/meta/classes/image.bbclass +++ b/meta/classes/image.bbclass @@ -208,6 +208,8 @@ python() { imager_build_deps = set() conversion_install = set() for bt in basetypes: + local_imager_install = set() + local_conversion_install = set() vardeps = set() cmds = [] bt_clean = bt.replace('-', '_').replace('.', '_') @@ -231,6 +233,7 @@ python() { # imager install for dep in (d.getVar('IMAGER_INSTALL:' + bt_clean) or '').split(): imager_install.add(dep) + local_imager_install.add(dep) for dep in (d.getVar('IMAGER_BUILD_DEPS:' + bt_clean) or '').split(): imager_build_deps.add(dep) @@ -273,6 +276,7 @@ python() { vardeps.add('CONVERSION_CMD:' + c) for dep in (localdata.getVar('CONVERSION_DEPS:' + c) or '').split(): conversion_install.add(dep) + local_conversion_install.add(dep) # remove temporary image files if t not in image_types: rm_images.add(localdata.expand('${IMAGE_FILE_HOST}')) @@ -305,6 +309,10 @@ python() { d.appendVarFlag(task, 'depends', task_deps) bb.build.addtask(task, 'do_image', after, d) + # set per type imager dependencies + d.setVar('INSTALL_image_%s' % bt_clean, d.getVar('IMAGER_INSTALL')) + d.appendVar('INSTALL_image_%s' % bt_clean, ' ' + ' '.join(sorted(local_imager_install | local_conversion_install))) + d.appendVar('IMAGER_INSTALL', ' ' + ' '.join(sorted(imager_install | conversion_install))) d.appendVar('IMAGER_BUILD_DEPS', ' ' + ' '.join(sorted(imager_build_deps))) } -- 2.20.1