From patchwork Thu Aug 14 07:54:34 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "srinuvasan.a" X-Patchwork-Id: 4274 Return-Path: Received: from shymkent.ilbers.de ([unix socket]) by shymkent (Cyrus 2.5.10-Debian-2.5.10-3+deb9u2) with LMTPA; Thu, 14 Aug 2025 09:52:36 +0200 X-Sieve: CMU Sieve 2.4 Received: from mail-ed1-f64.google.com (mail-ed1-f64.google.com [209.85.208.64]) by shymkent.ilbers.de (8.15.2/8.15.2/Debian-8+deb9u1) with ESMTPS id 57E7qZG9030134 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT) for ; Thu, 14 Aug 2025 09:52:35 +0200 Received: by mail-ed1-f64.google.com with SMTP id 4fb4d7f45d1cf-6188b5b8f0csf492145a12.0 for ; Thu, 14 Aug 2025 00:52:35 -0700 (PDT) ARC-Seal: i=2; a=rsa-sha256; t=1755157950; cv=pass; d=google.com; s=arc-20240605; b=KpaLhUPOVXdPu1iIjoPiD38dkouIzrG7Q6RJ+daS6slWp+T8CWIGT/ijcBA/mvkkxt Gi5J6E0el6QYzsTFPamJZ+RFVviEzjW3D9IN2CxWVEeJdibOp8aT5bCnwcFG6264xEeJ wKv8fImETVpZWrvyakQoqtxD9fTeLtm45enHXZkFgBTpYm2+TLMwO2QY1IFjz/0XHlNd xyBYg2ygfMlamMjACLNFUCCRedO2tiqGIsJBJpyjkEQgIMsHNo25qTR5YNa4eGeJEj3F ZO20xPUInQwejVl7Irqoo3QXquhAre1s0WBvJGAXmSRog/W0S/BxJSwHYxDavszA0LhG Fv7w== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=list-unsubscribe:list-subscribe:list-archive:list-help:list-post :list-id:mailing-list:precedence:reply-to:feedback-id:mime-version :message-id:date:subject:cc:to:from:dkim-signature; bh=XjC6KBgXK7QBYvfxc3v9Jtllko/Pcq6NjKT5TYbCXVQ=; fh=Va3E7sRs+9obwpRvNpA340TJsJ4tNSBPixHD5n/E95U=; b=hffjq3hik8O+KtUsqtkOukVxN9WaZvKYmoHPiq66eG+oZMdCDC1ugJFoYskXXRrLD8 iXE8AI/OpE7IW0we4A7qso378KvD4A9EdNHGSAVMHIfwB6wXV+/N6r/cdZ5GGWWi44rR 4eUzn5LRd7YzJLbZfuDe53hIx0c2HHvfn0hvsBb3ejEAP0wiw6WqIJebzr1bNmbvO860 xnSHNPbGMoZ+MCCaPDHY3jKSaSO0SKn4lU4dD0CyXmlNHY+qgwy+iIx3IaYTRi3WrlhX 1yd//IHre0BhYpz1Ifmr+/UUAkBZ/U3ZkhNl47dn5CwL/ZNk3wIjq67+eOQPZF27uFu8 I65Q==; darn=isar-build.org ARC-Authentication-Results: i=2; gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=fm2 header.b=TF0Who74; spf=pass (google.com: domain of fm-1324425-2025081407522300ba0355cbbc9464d2-k6pk3x@rts-flowmailer.siemens.com designates 185.136.64.228 as permitted sender) smtp.mailfrom=fm-1324425-2025081407522300ba0355cbbc9464d2-K6Pk3X@rts-flowmailer.siemens.com; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=siemens.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlegroups.com; s=20230601; t=1755157950; x=1755762750; darn=isar-build.org; h=list-unsubscribe:list-subscribe:list-archive:list-help:list-post :list-id:mailing-list:precedence:reply-to :x-original-authentication-results:x-original-sender:feedback-id :mime-version:message-id:date:subject:cc:to:from:from:to:cc:subject :date:message-id:reply-to; bh=XjC6KBgXK7QBYvfxc3v9Jtllko/Pcq6NjKT5TYbCXVQ=; b=PUbLSF4rLDwTuZrMXmqsvVwRTkLRp0tfjkzHf3vCa6PEt/kJMLBoH5KlnfE+NiGedR E59mM95XAmsr1ELz5ZI3K+IprfKc4cvNMiMSa9JB//kamsbSu+JVlB1mDdzErTzHjNRt +17xxJCcS/YlX8D7hXGxJvhtapdl0PZMMg82t6WNHQNZsZZcHuzHaD49O9SAgMp1JDC/ mo8KMz2PjYwLks+Ul79oQxSoom8csNbj4e7TD/FffArnqnX8b7bldHWPB2J9H+8nM63V ADWm+VkK4XgOjN3xT413kCBYH1onlyF652y68BJg9Ubv8p52WPUkH4eh0w5ugqOHUCOS LZbg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1755157950; x=1755762750; h=list-unsubscribe:list-subscribe:list-archive:list-help:list-post :x-spam-checked-in-group:list-id:mailing-list:precedence:reply-to :x-original-authentication-results:x-original-sender:feedback-id :mime-version:message-id:date:subject:cc:to:from:x-beenthere :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=XjC6KBgXK7QBYvfxc3v9Jtllko/Pcq6NjKT5TYbCXVQ=; b=TfGqvDJ0TRgxC/pSFmbUe1u71aemQS+8rFPAp6SAGUSciIwfzILxP+tfBPQzNMQut+ 80Hl4zBqlusIP5F5GDqqZ/inS5q2dQrFsDUU4K+OjPUhqudvFsjTHljZAoqZIHE+7QHR DexKXc/h2R6eu8T3dR2ZOSBTpOqH7oYLvxdSYPRh+4k12JptaaQg1sQnxujsRCRxzJTJ ZW+rdudh44+4cfU+B5jXFfaSoe35c719/XyC9fNqbFp/ek7YbdQrax7VY/kVsn6rFRdc jZgsS0PzVJdAhDgEbew65KqxBj4BcqQ6SkdTpkBtISPsf0NUPv2pE+1Gq0YOHsc9owDv aVWw== X-Forwarded-Encrypted: i=2; AJvYcCVJGUOdnUtGmuMdQ5hsVpRCnptwzYsfVQw7Wb+4wBD4nkphJz0Cect5hyBppcdR5iBDEXm8NCA=@isar-build.org X-Gm-Message-State: AOJu0Yx1PZ7HpUmQvVBPA04hBAh3oaFdE4hiwpLFx34brRCHPDXyL/0Q z+6R75cGk6U7zM7vj9WPdvDL/XQLOkhXPxquOceuQzktgb5IATMA6ZgB X-Google-Smtp-Source: AGHT+IEaxqE1pG+p9jFkHzwB2DZCkBQtoHzBt2kJpw9eyAv4nSHz4CWQHji/+nzMjHZ1MstU6z9WRA== X-Received: by 2002:a05:6402:1ed3:b0:615:9d94:2934 with SMTP id 4fb4d7f45d1cf-6188b935b4amr1812396a12.10.1755157949641; Thu, 14 Aug 2025 00:52:29 -0700 (PDT) X-BeenThere: isar-users@googlegroups.com; h=AZMbMZdZoASARnyC4hKuwamOCwQub5Oy5WFUJ/LHDyftXm5OgQ== Received: by 2002:a05:6402:23cd:b0:615:9353:4c7e with SMTP id 4fb4d7f45d1cf-6188a071855ls524466a12.0.-pod-prod-09-eu; Thu, 14 Aug 2025 00:52:26 -0700 (PDT) X-Received: by 2002:a17:907:97d2:b0:aec:5a33:1573 with SMTP id a640c23a62f3a-afcb99d7bebmr178102066b.41.1755157946419; Thu, 14 Aug 2025 00:52:26 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1755157946; cv=none; d=google.com; s=arc-20240605; b=MqYcf9buek5o9k2tLV4inFSds5whbzab1bT7FbnQ4zjWtGz7/AIj5JztEv1Ewdfyyb 1nwmZvx8LjK4q4RXDm09qS+IwB6gq6ghSZOkRItXsLvm5/MaN8CYEpgdY1EgDkPGhchr a3MMr/Nv92NhZjqWMFoN1eEvSB++dCfIohKO/beutXr5WlpvbYuZdIJXbB8J9/dLMM1U EIPuenx186s2sWMEB2gm8P5BEoxWTlXon8tXVIregVH0ClEisVk2tnrxDDkYTae5QyXv 3BFdHc3aPFxx1g0zHw1NsKaiwzWs86U9VJlT9vds3mgs7ZV0I0gZtxLinIu+v5XjOPN5 rrEg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=feedback-id:content-transfer-encoding:mime-version:message-id:date :subject:cc:to:from:dkim-signature; bh=ulAkoOVChIqC/XJSM3S8JH72SyzS1N2eApEc1adFMwg=; fh=pxf0rraACnmXIzbkWuAvk2BX/op6RhgrpBBgb3hKuGc=; b=LnMTF8secRKxCpPdJQSh5IiwFgkeqO2r3yrF7BEzS7zypRCwdS1ZWELbfQCZ0jmBXi gJ/XGp3MoN82xP0RSZ8VwPlpAo9L/3x3kOZ2RYGd1Q6xOeRTvkQrdd6xCGvITNWzA5ZH /Pr3QvgXtkzxtmA8b6c5UBlC5/0TAyxAYVK5/3VLQAzA6LgLXlqSyumHPXIccRO08r3g 17iU/28ud+wWd8XhctFUh/tRVyBzh4Bcbq9gbqm08R5KK1LjrvVzKY2RRnb6fc+gZXsd kyIRV3btLxlWZHlU5sVoicTKJQ2JSHUWsf2nYjQ1Xmes6i6NWeKmbA/79gGskeZIeLFY zk6A==; dara=google.com ARC-Authentication-Results: i=1; gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=fm2 header.b=TF0Who74; spf=pass (google.com: domain of fm-1324425-2025081407522300ba0355cbbc9464d2-k6pk3x@rts-flowmailer.siemens.com designates 185.136.64.228 as permitted sender) smtp.mailfrom=fm-1324425-2025081407522300ba0355cbbc9464d2-K6Pk3X@rts-flowmailer.siemens.com; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=siemens.com Received: from mta-64-228.siemens.flowmailer.net (mta-64-228.siemens.flowmailer.net. [185.136.64.228]) by gmr-mx.google.com with ESMTPS id a640c23a62f3a-af919eac6c6si77842466b.0.2025.08.14.00.52.25 for (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Thu, 14 Aug 2025 00:52:26 -0700 (PDT) Received-SPF: pass (google.com: domain of fm-1324425-2025081407522300ba0355cbbc9464d2-k6pk3x@rts-flowmailer.siemens.com designates 185.136.64.228 as permitted sender) client-ip=185.136.64.228; Received: by mta-64-228.siemens.flowmailer.net with ESMTPSA id 2025081407522300ba0355cbbc9464d2 for ; Thu, 14 Aug 2025 09:52:23 +0200 X-Patchwork-Original-From: "srinuvasan.a via isar-users" From: "srinuvasan.a" To: isar-users@googlegroups.com Cc: srinuvasan Subject: [PATCH] testsuite/cibuilder: Consolidate writes to ci_build.conf Date: Thu, 14 Aug 2025 13:24:34 +0530 Message-Id: <20250814075434.3410073-1-srinuvasan.a@siemens.com> MIME-Version: 1.0 X-Flowmailer-Platform: Siemens Feedback-ID: 519:519-1324425:519-21489:flowmailer X-Original-Sender: srinuvasan.a@siemens.com X-Original-Authentication-Results: gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=fm2 header.b=TF0Who74; spf=pass (google.com: domain of fm-1324425-2025081407522300ba0355cbbc9464d2-k6pk3x@rts-flowmailer.siemens.com designates 185.136.64.228 as permitted sender) smtp.mailfrom=fm-1324425-2025081407522300ba0355cbbc9464d2-K6Pk3X@rts-flowmailer.siemens.com; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=siemens.com X-Original-From: srinuvasan.a@siemens.com Reply-To: srinuvasan.a@siemens.com Precedence: list Mailing-list: list isar-users@googlegroups.com; contact isar-users+owners@googlegroups.com List-ID: X-Spam-Checked-In-Group: isar-users@googlegroups.com X-Google-Group-Id: 914930254986 List-Post: , List-Help: , List-Archive: , List-Unsubscribe: , X-Spam-Status: No, score=-4.9 required=5.0 tests=DKIMWL_WL_MED,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,MAILING_LIST_MULTI, RCVD_IN_DNSWL_BLOCKED,RCVD_IN_MSPIKE_H2,RCVD_IN_RP_CERTIFIED, RCVD_IN_RP_RNBL,RCVD_IN_RP_SAFE,SPF_PASS 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-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= From: srinuvasan Perform a single write to ci_build.conf rather than multiple per-condition writes, resulting in fewer I/O calls and a small performance gain. Apply f-strings only where variable interpolation is needed. Signed-off-by: srinuvasan --- testsuite/cibuilder.py | 62 ++++++++++++++++++++++++------------------ 1 file changed, 36 insertions(+), 26 deletions(-) diff --git a/testsuite/cibuilder.py b/testsuite/cibuilder.py index 7d702b35..cd5e70ba 100755 --- a/testsuite/cibuilder.py +++ b/testsuite/cibuilder.py @@ -178,25 +178,29 @@ class CIBuilder(Test): # write ci_build.conf with open(self.build_dir + '/conf/ci_build.conf', 'w') as f: if compat_arch: - f.write('ISAR_ENABLE_COMPAT_ARCH:amd64 = "1"\n') - f.write('IMAGE_INSTALL:remove:amd64 = "hello-isar"\n') - f.write('IMAGE_INSTALL:append:amd64 = " hello-isar-compat"\n') - f.write('ISAR_ENABLE_COMPAT_ARCH:arm64 = "1"\n') - f.write('IMAGE_INSTALL:remove:arm64 = "hello-isar"\n') - f.write('IMAGE_INSTALL:append:arm64 = " hello-isar-compat"\n') + f.write( + 'ISAR_ENABLE_COMPAT_ARCH:amd64 = "1"\n' + 'IMAGE_INSTALL:remove:amd64 = "hello-isar"\n' + 'IMAGE_INSTALL:append:amd64 = " hello-isar-compat"\n' + 'ISAR_ENABLE_COMPAT_ARCH:arm64 = "1"\n' + 'IMAGE_INSTALL:remove:arm64 = "hello-isar"\n' + 'IMAGE_INSTALL:append:arm64 = " hello-isar-compat"\n' + ) if not cross: f.write('ISAR_CROSS_COMPILE = "0"\n') else: - f.write('ISAR_CROSS_COMPILE = "1"\n') f.write( + 'ISAR_CROSS_COMPILE = "1"\n' 'IMAGE_INSTALL:append:hikey = ' '" linux-headers-${KERNEL_NAME}"\n' ) if debsrc_cache: f.write('BASE_REPO_FEATURES = "cache-deb-src"\n') if offline: - f.write('ISAR_USE_CACHED_BASE_REPO = "1"\n') - f.write('BB_NO_NETWORK = "1"\n') + f.write( + 'ISAR_USE_CACHED_BASE_REPO = "1"\n' + 'BB_NO_NETWORK = "1"\n' + ) if container: f.write('SDK_FORMATS = "docker-archive"\n') if gpg_pub_key: @@ -206,8 +210,10 @@ class CIBuilder(Test): if distro_apt_premir: f.write('DISTRO_APT_PREMIRRORS = "%s"\n' % distro_apt_premir) if ccache: - f.write('USE_CCACHE = "1"\n') - f.write('CCACHE_TOP_DIR = "%s"\n' % ccache_dir) + f.write( + 'USE_CCACHE = "1"\n' + 'CCACHE_TOP_DIR = "%s"\n' % ccache_dir + ) if source_date_epoch: f.write( 'SOURCE_DATE_EPOCH_FALLBACK = "%s"\n' % source_date_epoch @@ -229,24 +235,28 @@ class CIBuilder(Test): size = 4294967296 # 4GiB should be enough for the target wic.write("\0" * size) - f.write('BBMULTICONFIG += "isar-installer installer-target"\n') - f.write('INSTALLER_UNATTENDED = "1"\n') - f.write('INSTALLER_TARGET_OVERWRITE = "OVERWRITE"\n') - f.write(f'INSTALLER_TARGET_IMAGE = "{installer_image}"\n') - f.write(f'INSTALLER_TARGET_DEVICE = "{installer_device}"\n') - f.write(f'DISTRO ?= "{installer_distro}"\n') - f.write(f'MACHINE ?= "{installer_machine}"\n') - f.write(f'QEMU_DISK_ARGS = "-bios /usr/share/ovmf/OVMF.fd"\n') - f.write(f'QEMU_DISK_ARGS += "-drive file={install_target},'\ - 'if=ide,bus=0,unit=0,format=raw,snapshot=off"\n') - f.write(f'QEMU_DISK_ARGS += "-hdb ##ROOTFS_IMAGE##"\n') + f.write( + 'BBMULTICONFIG += "isar-installer installer-target"\n' + 'INSTALLER_UNATTENDED = "1"\n' + 'INSTALLER_TARGET_OVERWRITE = "OVERWRITE"\n' + f'INSTALLER_TARGET_IMAGE = "{installer_image}"\n' + f'INSTALLER_TARGET_DEVICE = "{installer_device}"\n' + f'DISTRO ?= "{installer_distro}"\n' + f'MACHINE ?= "{installer_machine}"\n' + 'QEMU_DISK_ARGS = "-bios /usr/share/ovmf/OVMF.fd"\n' + f'QEMU_DISK_ARGS += "-drive file={install_target},'\ + 'if=ide,bus=0,unit=0,format=raw,snapshot=off"\n' + 'QEMU_DISK_ARGS += "-hdb ##ROOTFS_IMAGE##"\n' + ) if customizations is not None: if not isinstance(customizations, str): customizations = ' '.join(customizations) - f.write('CUSTOMIZATIONS = "%s"\n' % customizations) - f.write('CUSTOMIZATION_VARS:append = " ${IMAGE}"\n') - f.write('CUSTOMIZATION_FOR_IMAGES:append = " isar-image-ci"\n') - f.write('HOSTNAME:isar-image-ci = "isar-ci"\n') + f.write( + f'CUSTOMIZATIONS = "{customizations}"\n' + 'CUSTOMIZATION_VARS:append = " ${IMAGE}"\n' + 'CUSTOMIZATION_FOR_IMAGES:append = " isar-image-ci"\n' + 'HOSTNAME:isar-image-ci = "isar-ci"\n' + ) if lines is not None: f.writelines((line + '\n' if not line.endswith('\n') else line) for line in lines)