From mboxrd@z Thu Jan 1 00:00:00 1970 X-GM-THRID: 7187242631035879424 X-Received: by 2002:adf:c587:0:b0:2bd:d783:39c with SMTP id m7-20020adfc587000000b002bdd783039cmr10722wrg.592.1673503054730; Wed, 11 Jan 2023 21:57:34 -0800 (PST) X-BeenThere: isar-users@googlegroups.com Received: by 2002:a05:600c:1d93:b0:3cf:9be3:73dd with SMTP id p19-20020a05600c1d9300b003cf9be373ddls1721116wms.3.-pod-canary-gmail; Wed, 11 Jan 2023 21:57:33 -0800 (PST) X-Google-Smtp-Source: AMrXdXv01SKEaPjdMXkvBlNhosFyrsX0K1Gq4xUIdoJBVdP/xWh6hl0b0+uspM/mh+lJ8s77WVFs X-Received: by 2002:a05:600c:3502:b0:3d9:e75c:756c with SMTP id h2-20020a05600c350200b003d9e75c756cmr14316015wmq.12.1673503053448; Wed, 11 Jan 2023 21:57:33 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1673503053; cv=none; d=google.com; s=arc-20160816; b=PyKTV/w4L1Y3t98ocmUkqq5m9Vu1Y+JisBaQOJMae7TPsjeNjXuw7XX1XR3pdCDSSO WkX5lF7RnGXVWDmxOVhy84aSTvnRtaUY9F9b8dla/7fq9+VknWiUAtLvy7YAscj0glGf 10+dGTR754ZOqkhUkZAHsDFkuzvJbG4SKvX14ZTg72A06SRn2cqunyVYoL2m6VH3Ywov MttR50xeb1Lz25lk2/U82UILkXEz4ax/B8wBvQ03gI0pCbqf2ezpATbTghYCCN8JNonR X6K7yQKLvKJooUndb6SSdXm8J4CfDTx3colyhHuhDxf8mFC0qaKR/ybJqr5lCide2HWI SMXA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=feedback-id:content-transfer-encoding:mime-version:references :in-reply-to:message-id:date:subject:cc:to:from:dkim-signature; bh=QqbcXhbe4KccR0xbhfT2wrZ7MnzzPx/uz+mpgI6ANds=; b=xn3PSLDoOJtQ3vsYSqQjVJrMMgAEqa1s1SKUj+ZMZGvz+Btu/H2AK2Q4jc5n8FLyb8 FN4z7349sMQYxVM8NJtDCD7elM2aoGcW9N4XTcp/CXOUsw4zC4ybL4AYVSta8jVvmDtT fD2VmJwE0817Q1G6A1JLcfWwXOA3WM7KnE4yb2VOM2bbXpFECXtPd4o8qH5E2DLOumMP hy4pL1FBYSeGqDmfqMCmErwM1/54w4+xHFBTzNBMc4jKJmZAsYrojj7eGPirVtnt8dEt 15Nnf5J3gxbrY8mbYMhkbCAl0PUQ9QLO2kPO5NZarqw+eZdcebqTODdR7W759/vm899q cnWA== ARC-Authentication-Results: i=1; gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=fm1 header.b="ePpe/xx7"; spf=pass (google.com: domain of fm-72506-202301120557322c577993b97980e458-x9r_5m@rts-flowmailer.siemens.com designates 185.136.64.226 as permitted sender) smtp.mailfrom=fm-72506-202301120557322c577993b97980e458-x9R_5m@rts-flowmailer.siemens.com; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=siemens.com Return-Path: Received: from mta-64-226.siemens.flowmailer.net (mta-64-226.siemens.flowmailer.net. [185.136.64.226]) by gmr-mx.google.com with ESMTPS id j31-20020a05600c1c1f00b003da0515e72csi211190wms.2.2023.01.11.21.57.33 for (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Wed, 11 Jan 2023 21:57:33 -0800 (PST) Received-SPF: pass (google.com: domain of fm-72506-202301120557322c577993b97980e458-x9r_5m@rts-flowmailer.siemens.com designates 185.136.64.226 as permitted sender) client-ip=185.136.64.226; Authentication-Results: gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=fm1 header.b="ePpe/xx7"; spf=pass (google.com: domain of fm-72506-202301120557322c577993b97980e458-x9r_5m@rts-flowmailer.siemens.com designates 185.136.64.226 as permitted sender) smtp.mailfrom=fm-72506-202301120557322c577993b97980e458-x9R_5m@rts-flowmailer.siemens.com; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=siemens.com Received: by mta-64-226.siemens.flowmailer.net with ESMTPSA id 202301120557322c577993b97980e458 for ; Thu, 12 Jan 2023 06:57:33 +0100 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; s=fm1; d=siemens.com; i=felix.moessbauer@siemens.com; h=Date:From:Subject:To:Message-ID:MIME-Version:Content-Type:Content-Transfer-Encoding:Cc:References:In-Reply-To; bh=QqbcXhbe4KccR0xbhfT2wrZ7MnzzPx/uz+mpgI6ANds=; b=ePpe/xx7LhBJEt3zLBMacc51iaE1vaVxIBfpwZyVU1kkqwx4lwlDQ3jA9FK0Q0YBPutQyo QpI2GKQ3UxCT/aUlI/S0sgMPzp6V0+6q0R1R2i7Twa1nBupOW91Vo5pEaK/EPnD6gu9WSGbU F0w+wj+iXJz1FyCFxW83WzDh7L/Wc=; From: Felix Moessbauer To: isar-users@googlegroups.com Cc: jan.kiszka@siemens.com, daniel.bovensiepen@siemens.com, henning.schild@siemens.com, venkata.pyla@toshiba-tsip.com, Felix Moessbauer Subject: [PATCH v2 08/10] make deb_add_changelog idempotent Date: Thu, 12 Jan 2023 05:56:17 +0000 Message-Id: <20230112055619.843445-9-felix.moessbauer@siemens.com> In-Reply-To: <20230112055619.843445-1-felix.moessbauer@siemens.com> References: <20230112055619.843445-1-felix.moessbauer@siemens.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Flowmailer-Platform: Siemens Feedback-ID: 519:519-72506:519-21489:flowmailer X-TUID: 7xrM3n03Pqrm Previously, the deb_add_changelog function considered an auto-generated changelog as a base to add changes on top. This behavior is not idempontent on subsequent invocations of the function (e.g. on partial rebuilds). This lead to both reproducability issues, as well as unclean changelog files having multiple "generated by ISAR" entries. This patch changes this implementation in a way to always create a (possibly empty) orig changelog on the first invocation. On subequent invocations, the orig changelog is only considered as provided by the user, if it is not empty. Signed-off-by: Felix Moessbauer --- meta/classes/debianize.bbclass | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) diff --git a/meta/classes/debianize.bbclass b/meta/classes/debianize.bbclass index d125256..ca7b520 100644 --- a/meta/classes/debianize.bbclass +++ b/meta/classes/debianize.bbclass @@ -19,11 +19,14 @@ deb_add_changelog() { if [ ! -f ${WORKDIR}/changelog.orig ]; then cp ${S}/debian/changelog ${WORKDIR}/changelog.orig fi - orig_version=$(dpkg-parsechangelog -l ${WORKDIR}/changelog.orig -S Version) - changelog_v=$(echo "${changelog_v}" | sed 's//'${orig_version}'/') - orig_date=$(dpkg-parsechangelog -l ${WORKDIR}/changelog.orig -S Date) - orig_seconds=$(date --date="${orig_date}" +'%s') - timestamp=$(expr ${orig_seconds} + 42) + # we have a non auto-generated original changelog + if [ -s ${WORKDIR}/changelog.orig ]; then + orig_version=$(dpkg-parsechangelog -l ${WORKDIR}/changelog.orig -S Version) + changelog_v=$(echo "${changelog_v}" | sed 's//'${orig_version}'/') + orig_date=$(dpkg-parsechangelog -l ${WORKDIR}/changelog.orig -S Date) + orig_seconds=$(date --date="${orig_date}" +'%s') + timestamp=$(expr ${orig_seconds} + 42) + fi fi date=$(LANG=C date -R -d @${timestamp}) @@ -34,7 +37,10 @@ ${PN} (${changelog_v}) UNRELEASED; urgency=low -- ${MAINTAINER} ${date} EOF - if [ -f ${WORKDIR}/changelog.orig ]; then + # ensure that we always start with the orig version of the + # changelog on repeated invocations (e.g. on partial rebuilds) + touch ${WORKDIR}/changelog.orig + if [ -s ${WORKDIR}/changelog.orig ]; then # prepend our entry to the original changelog echo >> ${S}/debian/changelog cat ${WORKDIR}/changelog.orig >> ${S}/debian/changelog -- 2.34.1