From mboxrd@z Thu Jan 1 00:00:00 1970 X-GM-THRID: 7239302955540676608 X-Received: by 2002:a17:902:7b81:b0:1ae:71bb:935c with SMTP id w1-20020a1709027b8100b001ae71bb935cmr1304278pll.6.1685531585261; Wed, 31 May 2023 04:13:05 -0700 (PDT) X-BeenThere: isar-users@googlegroups.com Received: by 2002:a62:8186:0:b0:63b:5a29:3be6 with SMTP id t128-20020a628186000000b0063b5a293be6ls7356649pfd.0.-pod-prod-01-us; Wed, 31 May 2023 04:13:04 -0700 (PDT) X-Google-Smtp-Source: ACHHUZ7B/FvdI/Iczhe3gL7kV0SwDKMjmjegCy9JEjbVc82eBkv6UISIaVn6GmQ30MGBz0oJxFK+ X-Received: by 2002:aa7:88c3:0:b0:64c:aa98:a69f with SMTP id k3-20020aa788c3000000b0064caa98a69fmr5481884pff.1.1685531584366; Wed, 31 May 2023 04:13:04 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1685531584; cv=none; d=google.com; s=arc-20160816; b=UygntUIcY/hnYrnQsRGwR2DQALR66AsOH+FCj/1dX0N0s2fJYPLoYYh7K+KexQXFly r8hG2TE2GX6W/cHmfwS1TrYK3hQ7NlhHDUatf55Hq8QCGe3mWzllvifOcAcWJzlWvJGG gd0UAU/sVJeBtCMNHO2u1mgJxBLNtPlWQa7e+q0DYg3prG5ZBgatqtk6eLvRVTlQz5bJ 00INWu75VwHTtGtMZInI/wFlq1Q/vGgqHMnDQj9RRaFO3IWfj1SqXKAT6EHpLdxhIsWe skjGccl1wymfxmLP4gbm03+nOawwUuCLpj4tzlLaTqlTg4xFcpqBcjjedlEvdXlvZt9v AFPg== 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:cc:to:from; bh=IhW2EXP85akoPQxK92nzuHvT9dWTr4UO7B7jVQtSvfM=; b=dY4gyTe+94ANOm1EDJ55E3HUfA2Lp9EkQX9EmqXmYtnoM1Kc4m+ezrlPGtL4Xpt01W iMBzfwLdVr4uWKdln9xltiTme6iIzoK7e7L3pwEpv3CoK6lMCruvTK88itPNyXb31Gx4 3Nu3x52j4LPv9JbWZwb/D37CWH/gc77L8GIW01pqWexgKv61qdrA8m0khr9eFq7wK3qB zzYtkUXokYWHOnweRKIrROvgZOI0uHFS0bWrzv2QfMqctawnorIZJk04B5Q4ksO3tFPC ciNx4tly7RVRE9K7KUmHQZd28p2EnZd7vU0PxjW5irj7h6y9ltNlJDxb6YiMXDTUTIf/ cU3w== ARC-Authentication-Results: i=1; gmr-mx.google.com; spf=pass (google.com: domain of amikan@ilbers.de designates 85.214.156.166 as permitted sender) smtp.mailfrom=amikan@ilbers.de Return-Path: Received: from shymkent.ilbers.de (shymkent.ilbers.de. [85.214.156.166]) by gmr-mx.google.com with ESMTPS id fa31-20020a056a002d1f00b0064364fb3b6esi506404pfb.0.2023.05.31.04.13.03 for (version=TLS1_2 cipher=ECDHE-ECDSA-CHACHA20-POLY1305 bits=256/256); Wed, 31 May 2023 04:13:04 -0700 (PDT) Received-SPF: pass (google.com: domain of amikan@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 amikan@ilbers.de designates 85.214.156.166 as permitted sender) smtp.mailfrom=amikan@ilbers.de Received: from user-B660.. (IN-213-226-141-203.bitemobile.lv [213.226.141.203] (may be forged)) (authenticated bits=0) by shymkent.ilbers.de (8.15.2/8.15.2/Debian-8+deb9u1) with ESMTPSA id 34VBCcvb026932 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 31 May 2023 13:12:43 +0200 From: Anton Mikanovich To: isar-users@googlegroups.com Cc: Anton Mikanovich Subject: [PATCH v5 4/9] imager: Split imager deps between image types Date: Wed, 31 May 2023 14:12:31 +0300 Message-Id: <20230531111236.104373-5-amikan@ilbers.de> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20230531111236.104373-1-amikan@ilbers.de> References: <20230531111236.104373-1-amikan@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: y8hmjJtVQKuI 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.34.1