From mboxrd@z Thu Jan 1 00:00:00 1970 X-GM-THRID: 6721684426774806528 X-Received: by 2002:a5d:5186:: with SMTP id k6mr10014359wrv.30.1565014111798; Mon, 05 Aug 2019 07:08:31 -0700 (PDT) X-BeenThere: isar-users@googlegroups.com Received: by 2002:a7b:cc10:: with SMTP id f16ls56735wmh.2.gmail; Mon, 05 Aug 2019 07:08:31 -0700 (PDT) X-Google-Smtp-Source: APXvYqw/MyEjAsqqa2wyj5hxox/EEGl34vb1w7zeVH9Fih7or1JWn5D6Lh7RKHpOekbvKFuJ/ILf X-Received: by 2002:a1c:9a4b:: with SMTP id c72mr18835050wme.102.1565014111275; Mon, 05 Aug 2019 07:08:31 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1565014111; cv=none; d=google.com; s=arc-20160816; b=C7lpdqJiF3ypbTmhWElWBATYjg9h/NDlfKQl9DRQoXcqDb6yEBADn7deUHcpXwNaVL OEB7kIEZv0ROZf+7YRKslMqso4wCxAJ8QUIuIWIpMnlBkxmhbMFP5h/PT4ySFwsKVawW rzMRscmvRPbNB6VRhWkIFtC1b8tewdM2MbRyX93V1HRX9UYGEOezPB42rLU27XqXDFEN Cufx0hm2sPH3ldfVpbjmQ9ywaGzqC1Z/rtG3qN9wLEdlq67JL2usyum3EijN7w/0OY3n QuF275bYHhvxEjqEDB5aJ23Z9lzMk1SD8GdXCWgnn6wJWShWTTvuw1EDu1CgpSKrS49L ruig== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from; bh=eiDiDnDCGFFvhDli2KHHAy9dpRtN7Wc/lOKIzC4UbCI=; b=BH2+6iFxkHMkREGCCFZ2EDKQ+TeG9ocDwfr0mqWUhFow3uKkFDoUPxkRqWbBBFwF9y mclfv9miFeJDNm75Rl2wtsPoyT8OxPonIi4uN/7dTFwAca/xt6eZgpcl8jVsZjMp7QEX zhJ7Avx3EMwBGm+bKTr5BDx/NP4cnkSBFJCd61NS4hsh2lL0Mg/+wYUKaA8+nWFJkmRm J3YvXaoCzscnBWwCZwaxXyQma5RnmS/74xDBqICHRtGu8FXXQwCVxru2o8dVt7upQFMF IcRFCxRQqX3T0Ogk6zloJfl0UIXPfMBXePlLIxo7Q1MnrbQ1QbWzisqlMFLFu3DrW9iz Huug== ARC-Authentication-Results: i=1; gmr-mx.google.com; spf=pass (google.com: domain of quirin.gylstorff@siemens.com designates 194.138.37.39 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 lizzard.sbs.de (lizzard.sbs.de. [194.138.37.39]) by gmr-mx.google.com with ESMTPS id u18si4918515wri.5.2019.08.05.07.08.31 for (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Mon, 05 Aug 2019 07:08:31 -0700 (PDT) Received-SPF: pass (google.com: domain of quirin.gylstorff@siemens.com designates 194.138.37.39 as permitted sender) client-ip=194.138.37.39; Authentication-Results: gmr-mx.google.com; spf=pass (google.com: domain of quirin.gylstorff@siemens.com designates 194.138.37.39 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 lizzard.sbs.de (8.15.2/8.15.2) with ESMTPS id x75E8Vsv006699 (version=TLSv1.2 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK) for ; Mon, 5 Aug 2019 16:08:31 +0200 Received: from debian.ad001.siemens.net ([139.25.68.238]) by mail2.sbs.de (8.15.2/8.15.2) with ESMTP id x75E8U2O023502; Mon, 5 Aug 2019 16:08:30 +0200 From: "Q. Gylstorff" To: isar-users@googlegroups.com Cc: Quirin Gylstorff Subject: [PATCH] meta/classes: generate bill of material from image Date: Mon, 5 Aug 2019 16:07:42 +0200 Message-Id: <20190805140742.11479-1-Quirin.Gylstorff@siemens.com> X-Mailer: git-send-email 2.20.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-TUID: MykamNriXrWw 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 To use it add following line to the local.conf: ISAR_DO_PACKAGE_LIST ?= "1" Signed-off-by: Quirin Gylstorff --- meta-isar/conf/local.conf.sample | 4 ++++ .../classes/image-package-list-extension.bbclass | 16 ++++++++++++++++ meta/classes/image.bbclass | 1 + 3 files changed, 21 insertions(+) create mode 100644 meta/classes/image-package-list-extension.bbclass diff --git a/meta-isar/conf/local.conf.sample b/meta-isar/conf/local.conf.sample index 5b3a0a1..d188051 100644 --- a/meta-isar/conf/local.conf.sample +++ b/meta-isar/conf/local.conf.sample @@ -170,6 +170,10 @@ IMAGE_INSTALL = "hello-isar example-raw example-module-${KERNEL_NAME} enable-fsc # NOTE: this works on build host >= stretch for armhf, arm64 and amd64 targets for now. ISAR_CROSS_COMPILE ?= "0" +# +# Generate package list +ISAR_DO_PACKAGE_LIST ?= "1" + # # Uncomment this to enable use of cached base repository #ISAR_USE_CACHED_BASE_REPO ?= "1" diff --git a/meta/classes/image-package-list-extension.bbclass b/meta/classes/image-package-list-extension.bbclass new file mode 100644 index 0000000..558922e --- /dev/null +++ b/meta/classes/image-package-list-extension.bbclass @@ -0,0 +1,16 @@ +# This software is a part of ISAR. +# Copyright (C) Siemens AG, 2019 +# +# SPDX-License-Identifier: MIT + +ISAR_DO_PACKAGE_LIST ??= "0" +image_package_list[dirs] = "${DEPLOY_DIR_IMAGE}" +image_package_list() { + if [ "${@repr(bb.utils.to_boolean(d.getVar('ISAR_DO_PACKAGE_LIST')))}" = 'True' ]; then + dpkg-query --admindir=${IMAGE_ROOTFS}/var/lib/dpkg/ \ + -f '${source:Package}|${source:Version}|${binary:Package}|${Version}\n' -W > \ + ${DEPLOY_DIR_IMAGE}/${IMAGE_FULLNAME}.packages.lst + fi +} +ROOTFS_POSTPROCESS_COMMAND =+ "image_package_list" + diff --git a/meta/classes/image.bbclass b/meta/classes/image.bbclass index ec6bd39..85bab64 100644 --- a/meta/classes/image.bbclass +++ b/meta/classes/image.bbclass @@ -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