From mboxrd@z Thu Jan 1 00:00:00 1970 X-GM-THRID: 6721684426774806528 X-Received: by 2002:a19:ed11:: with SMTP id y17mr2580129lfy.141.1565099794961; Tue, 06 Aug 2019 06:56:34 -0700 (PDT) X-BeenThere: isar-users@googlegroups.com Received: by 2002:a19:7010:: with SMTP id h16ls375411lfc.11.gmail; Tue, 06 Aug 2019 06:56:34 -0700 (PDT) X-Google-Smtp-Source: APXvYqwFvNLrJ5HOoku7XBxdVIZQUfEwPzpg8zDWIu98OXrk+htQ+uYrz25VxuKbq5Lylz0px5+O X-Received: by 2002:ac2:5939:: with SMTP id v25mr2636099lfi.115.1565099794498; Tue, 06 Aug 2019 06:56:34 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1565099794; cv=none; d=google.com; s=arc-20160816; b=gkSaJ+8xWvQvF3zgNUK2hIEvDM6VtSp+Il27BEuKZglB3WJJ8pVLq6UiKQpvse/76k VnbVKxyTbb9evrPbweeWDQNR8r2DUT7SpoY0/wmqC12ZKe22fNvxsQU89imV3fPMOsFP ZQfpJYNkIBVdVaoJJm5iwWWaKbh17ikgfzAMszY4nj5RLl+eLv4RQ4JAGFJ1G2Mgjb32 ig5amEfc4v6I5N9aG1orWntkLn6H97xa5mnXTPlhIhyqkHFW0E/f593AxC/Mim1KWJ7R rnAT4N5okiFHpNMk1Drf5WWe3BdJTV/WU7twXFtuBjUMN4XUojD8RKqQAsuNupvMa5/Q L0IA== 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=7OlxgILdqOIS9S3g8VgtIw5N7g+Ox9/x0dXb0g/HE8Q=; b=mv/pms90Uqc/elkHRE7+8+x5Drgmvq1DKDYwAyLTau4OWRC57+de8H0vt3klsLrU1K XkbtDJAF5GLgEO5WAwQVpnEcPTduCu21UVcifHq/3Xtyo03Twexv/TwATLtZoYJQqeDu KPOwbF35bx9gVKeRUtnG5zJ3p8ULlE0osC/MkrL4bDBIeQAIftwwlzPiEqH7FMUZhf1F KC6VbR+2Nkw7QwxkLG+J29XUfMAx9KDasQ6EvEvOkJ3CfkNT8X+gfKu2dlmS8fJONH+z jfbrRkgdJkizbH2rKUvLRRWgurhWSRUJ50/OEsVANS4/sLZ9Y0V+CM63hmtyjyAh7n2U yuvw== ARC-Authentication-Results: i=1; gmr-mx.google.com; spf=pass (google.com: domain of quirin.gylstorff@siemens.com designates 192.35.17.28 as permitted sender) smtp.mailfrom=Quirin.Gylstorff@siemens.com; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=siemens.com Return-Path: Received: from goliath.siemens.de (goliath.siemens.de. [192.35.17.28]) by gmr-mx.google.com with ESMTPS id m20si567181lfh.1.2019.08.06.06.56.34 for (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Tue, 06 Aug 2019 06:56:34 -0700 (PDT) Received-SPF: pass (google.com: domain of quirin.gylstorff@siemens.com designates 192.35.17.28 as permitted sender) client-ip=192.35.17.28; Authentication-Results: gmr-mx.google.com; spf=pass (google.com: domain of quirin.gylstorff@siemens.com designates 192.35.17.28 as permitted sender) smtp.mailfrom=Quirin.Gylstorff@siemens.com; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=siemens.com Received: from mail2.sbs.de (mail2.sbs.de [192.129.41.66]) by goliath.siemens.de (8.15.2/8.15.2) with ESMTPS id x76DuXqk028015 (version=TLSv1.2 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 6 Aug 2019 15:56:33 +0200 Received: from debian.ad001.siemens.net ([139.25.68.238]) by mail2.sbs.de (8.15.2/8.15.2) with ESMTP id x76DuX02012363; Tue, 6 Aug 2019 15:56:33 +0200 From: "Q. Gylstorff" To: isar-users@googlegroups.com Cc: Quirin Gylstorff , Claudius Heine Subject: [PATCH v2] meta/classes: generate bill of material from image Date: Tue, 6 Aug 2019 15:55:39 +0200 Message-Id: <20190806135539.1826-1-Quirin.Gylstorff@siemens.com> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20190805140742.11479-1-Quirin.Gylstorff@siemens.com> References: <20190805140742.11479-1-Quirin.Gylstorff@siemens.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-TUID: GKC00nTcmgel From: Quirin Gylstorff To create products it is necessary to have a list of used packages for clearance and to security monitoring. To get a simple list of packages use dpkg-query and generate a list with the following pattern: source name| source version | binary package name | binary version The list is stored in ${IMAGE_FULLNAME}.rootfs.manifest Remove the feature with: ROOTFS_FEATURES_remove = "generate-manifest" Signed-off-by: Quirin Gylstorff --- meta/classes/image-package-list-extension.bbclass | 13 +++++++++++++ meta/classes/image.bbclass | 3 ++- 2 files changed, 15 insertions(+), 1 deletion(-) create mode 100644 meta/classes/image-package-list-extension.bbclass diff --git a/meta/classes/image-package-list-extension.bbclass b/meta/classes/image-package-list-extension.bbclass new file mode 100644 index 0000000..c746397 --- /dev/null +++ b/meta/classes/image-package-list-extension.bbclass @@ -0,0 +1,13 @@ +# This software is a part of ISAR. +# Copyright (C) Siemens AG, 2019 +# +# SPDX-License-Identifier: MIT + +image_generate_manifest[dirs] = "${DEPLOY_DIR_IMAGE}" +image_generate_manifest() { + dpkg-query --admindir=${IMAGE_ROOTFS}/var/lib/dpkg/ \ + -f '${source:Package}|${source:Version}|${binary:Package}|${Version}\n' -W > \ + ${DEPLOY_DIR_IMAGE}/${IMAGE_FULLNAME}.rootfs.manifest +} +ROOTFS_POSTPROCESS_COMMAND += "${@bb.utils.contains('ROOTFS_FEATURES', 'generate-manifest', 'image_generate_manifest', '', d)}" + diff --git a/meta/classes/image.bbclass b/meta/classes/image.bbclass index ec6bd39..60dd9fb 100644 --- a/meta/classes/image.bbclass +++ b/meta/classes/image.bbclass @@ -58,7 +58,7 @@ image_do_mounts() { } ROOTFSDIR = "${IMAGE_ROOTFS}" -ROOTFS_FEATURES += "copy-package-cache clean-package-cache finalize-rootfs" +ROOTFS_FEATURES += "copy-package-cache clean-package-cache finalize-rootfs generate-manifest" ROOTFS_PACKAGES += "${IMAGE_PREINSTALL} ${IMAGE_INSTALL}" inherit rootfs @@ -68,6 +68,7 @@ inherit image-tools-extension inherit image-postproc-extension inherit image-locales-extension inherit image-account-extension +inherit image-package-list-extension # Extra space for rootfs in MB ROOTFS_EXTRA ?= "64" -- 2.20.1