From patchwork Fri Apr 5 16:31:34 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Larson, Chris" X-Patchwork-Id: 3484 Return-Path: Received: from shymkent.ilbers.de ([unix socket]) by shymkent (Cyrus 2.5.10-Debian-2.5.10-3+deb9u2) with LMTPA; Fri, 05 Apr 2024 18:32:38 +0200 X-Sieve: CMU Sieve 2.4 Received: from mail-pg1-f186.google.com (mail-pg1-f186.google.com [209.85.215.186]) by shymkent.ilbers.de (8.15.2/8.15.2/Debian-8+deb9u1) with ESMTPS id 435GWaUj003096 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT) for ; Fri, 5 Apr 2024 18:32:37 +0200 Received: by mail-pg1-f186.google.com with SMTP id 41be03b00d2f7-5cdfd47de98sf1924175a12.1 for ; Fri, 05 Apr 2024 09:32:37 -0700 (PDT) ARC-Seal: i=2; a=rsa-sha256; t=1712334750; cv=pass; d=google.com; s=arc-20160816; b=vl8Tn4pcmC2Uxqql1OU7TutgXJ84yBiCU0P7xT21gLP727BYSFIbvSL0r4Clm6DV6A bO6SkBTmtP/OtEZehbiYnfTPFVsGv6OJwhfcoLa4cnxV3z84evERvOBofaNP6tirK8tD qWk1tmUJODSrT+KebD8Zv1sq+1/GBhOklUaMNx3EjLHCa4CnINDzBphPcVmHsPa6NFkJ 0EfNLKQh8hSabcsgvMlndR9oTk3Vrsk8hbjVFusBPY8rtv+ueRM+Yl00f33Twn93huMS LiiCjBLgqtANXXzgcmtiBmIaRbiOy42nW1nVF/zwRbb+BC7zS4vZvEjWfwELD3qvFkTQ +Rjg== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-unsubscribe:list-subscribe:list-archive:list-help:list-post :list-id:mailing-list:precedence:reply-to:feedback-id:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=sraGaZm23Oi90bX+C9tgNPugn9UCkZ1+h3qZ6KaL96Q=; fh=YMLZbYBnYr0LOCdadQV9do3cnKwWo1dNsN27LWBDiMY=; b=TtD2QtJy+CYvJodaKAkWLq4DrfqsK2OgjZwBu+f2XI5dySg/8gqolvqpPAWBkY9qHE 441E+uvA8sAWfR4B6PP1oizWg9cQL4gzPFUlv/qE4BLfpH2U1oMxvTNlyAXN6hlUs34f KVMxcvePAwAFAmxg/XwuKqmYQzdxupQg44qNmoENs7+/Yytff//niNd1TtRaH+l8Y6ns 8zZtFXf4Gw79kjl36VBVOG3h2imG7rUsMp/T1R0ZMfZUUb7hyBnv5UYWGXU0d6kc8qE2 VleHyj9nPgqt13iskNO+WPimnJTupYyww8/Saqn0oygdlrbGTA+UTVgZIzeNUqfRvfM7 s1KA==; darn=isar-build.org ARC-Authentication-Results: i=2; gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=fm1 header.b=VSgzxdnS; spf=pass (google.com: domain of fm-1325773-2024040516322796ceba0726c45b3305-vryicf@rts-flowmailer.siemens.com designates 185.136.64.228 as permitted sender) smtp.mailfrom=fm-1325773-2024040516322796ceba0726c45b3305-VRYiCF@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=1712334750; x=1712939550; 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:references:in-reply-to:message-id:date:subject:cc:to :from:from:to:cc:subject:date:message-id:reply-to; bh=sraGaZm23Oi90bX+C9tgNPugn9UCkZ1+h3qZ6KaL96Q=; b=iO871qqD0ooRzrr0QZZobtVnt3aMP+Fh9V2qlPaSGDLjmUcfKpbXOq2I3PxC2ow6Uf oGbvY5Djmh1DvTTWgY7zEqGwsCDgNW19Tz/m7E9UZmf4pkInRpyjGgUFL5WmD4/FSgx8 xO09aVzPwOwSHiNFMAh6y5RmbHBnpROKx+GT3vKoXG7E05GjDacYUMIWxABu7jcl06KV K54cQbdGtc9Dbgl9n1/fKA/B+fM932qqPDRcT/8qeAGLXIGEJlBkGA1NwC6RmRUD+B2G cW7ed6m1E18heOZi3KMdjiTx5D739I1+kqzWYJNqXpQJqFNtT3qcVWQzFeAUYoN9BaFH UTbg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1712334750; x=1712939550; 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:references:in-reply-to:message-id:date:subject:cc:to :from:x-beenthere:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=sraGaZm23Oi90bX+C9tgNPugn9UCkZ1+h3qZ6KaL96Q=; b=vAeC2vVxQGlWVrv4+9LMSINl5rHEClMLiLCoOFR+IM2/NXuYV+sDT/Irf3jeP4vZZv K9+CzkwkObcyFcAPEhOaIBxyHiyurqS+Pbkca6DhYn+wbHap7as91ANwu55gVHdcGUK8 Iz41XgfBuuuiIGwiW8Ig490aGGLCohEwHhij1KmlamiRnVvVBRiC2KEOToygSrHBsdbA FF+Yat3+gaDwApb9KEyJkhwGjfDVEeExOF2pRfqeOzBLEU5++DaIuaVgUoUUdq3Y43/7 L2xePibnTSYaCAOTW3DnGZW5g9baPP7DU1eCU7/Tqow2xi+Ldbl0NN1JsUY+rmTq9+uH Aa4w== X-Forwarded-Encrypted: i=2; AJvYcCWng416kWjto41G1VqUmwXDcc1pH7YrMok718C8DIt+WTEepUQoHnK0ZnGNllUWzZhrlcrDeAZejK2vNkly/fVIv3wN8jE= X-Gm-Message-State: AOJu0YygWOB9amID1+lksCjWOQiJ0kTKiBglkMpA64pqMvQRvYCGZVZB UhcAQHfDgbBwFL4uugvIe31ebTzI4m5FdMsaDstHRQCZWP/g7ZAD X-Google-Smtp-Source: AGHT+IHHD9vDT36dxhj351FOecZP/i899Hbs5EQmXrzote9lTeDK7hDkJGXwUU4J3+TCpV/peiXklw== X-Received: by 2002:a05:6a20:9155:b0:1a7:49c1:d326 with SMTP id x21-20020a056a20915500b001a749c1d326mr413181pzc.1.1712334749854; Fri, 05 Apr 2024 09:32:29 -0700 (PDT) X-BeenThere: isar-users@googlegroups.com Received: by 2002:a05:6a00:391a:b0:6ea:afca:4d5c with SMTP id fh26-20020a056a00391a00b006eaafca4d5cls1514679pfb.0.-pod-prod-02-us; Fri, 05 Apr 2024 09:32:28 -0700 (PDT) X-Received: by 2002:a05:6a20:9494:b0:1a7:3c98:e8fa with SMTP id hs20-20020a056a20949400b001a73c98e8famr1966213pzb.61.1712334748472; Fri, 05 Apr 2024 09:32:28 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1712334748; cv=none; d=google.com; s=arc-20160816; b=g1XVBJNXfk9qBzOuB3Sx/Srub+NJsAGfx9PLyEBoDtVMB50i5v+9RzU7sFoAnVhhGY 2GjiqzlxTTXtdBoomgBkmtfKF1jckd33+PAG+DTKP6W3zxnwv5T8qSOO1dWz+meTrygr 0U+ArsQNQjRtZHJ+661LKIzXulR7VfsoIIQ6kqxO4QugoLH18UxJyupHi8iyWukQhI99 8ztgVOj3oDtOUjP/ilm4hSSUWVmvEwMygrN5rrbTT4k9fJX1JWsdr4oNtLyf1VRtZK51 02hWRyc7hNBF45xcMKDa3bhYJJQb76VMWlAck4umebnPoA23s/LTfwm6pm1ePE5S3oZl Xm7g== 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=rvhd+APN7GH9y6CKXzx78NEB26OElTJF4+LasAkVfRc=; fh=3bh9z2BWAzGAc1byRhMi0K+arMZmX5BQHE0sOxINdyU=; b=uJiCcy6SILl10QlL+4B9vZ+I2E6Xl+8nXdfe+W6ZfW+Iymp1ew1fXva67sFH7a/s6T cYnCqIC75VONtiSH+xP7Rsc9EkRd1F6GthHmOtUeUY0wEBZ2jIcnpmfZSvf1r22VyM9V k51h1O3nU2oh87+9eIN+r6uiRaEf3LRtx19v06bvglp1q5yFY2bbsfmc8yaCtm13RunC 005zZn32yU23Ovls7C+axL8VADf0ozUUfRlbaeHv1p5R0O0vLBheFbQHI8cmqrNTCv01 Csn5VGGp3mLnpgmfcUVPdDLmqwU5+AAnB0LU7jaki4XQTzKqIBAXVg6Yran3v8UgFhrh Eh0Q==; dara=google.com ARC-Authentication-Results: i=1; gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=fm1 header.b=VSgzxdnS; spf=pass (google.com: domain of fm-1325773-2024040516322796ceba0726c45b3305-vryicf@rts-flowmailer.siemens.com designates 185.136.64.228 as permitted sender) smtp.mailfrom=fm-1325773-2024040516322796ceba0726c45b3305-VRYiCF@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 c4-20020a63d504000000b005f0a5113629si153309pgg.3.2024.04.05.09.32.28 for (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Fri, 05 Apr 2024 09:32:28 -0700 (PDT) Received-SPF: pass (google.com: domain of fm-1325773-2024040516322796ceba0726c45b3305-vryicf@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 2024040516322796ceba0726c45b3305 for ; Fri, 05 Apr 2024 18:32:28 +0200 X-Patchwork-Original-From: "chris.larson via isar-users" From: "Larson, Chris" To: isar-users@googlegroups.com Cc: Christopher Larson Subject: [PATCH 8/9] testsuite: add perform_signature_lint method Date: Fri, 5 Apr 2024 16:31:34 +0000 Message-Id: <20240405163135.2987489-9-chris.larson@siemens.com> In-Reply-To: <20240405163135.2987489-1-chris.larson@siemens.com> References: <20240405163135.2987489-1-chris.larson@siemens.com> MIME-Version: 1.0 X-Flowmailer-Platform: Siemens Feedback-ID: 519:519-1325773:519-21489:flowmailer X-Original-Sender: chris.larson@siemens.com X-Original-Authentication-Results: gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=fm1 header.b=VSgzxdnS; spf=pass (google.com: domain of fm-1325773-2024040516322796ceba0726c45b3305-vryicf@rts-flowmailer.siemens.com designates 185.136.64.228 as permitted sender) smtp.mailfrom=fm-1325773-2024040516322796ceba0726c45b3305-VRYiCF@rts-flowmailer.siemens.com; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=siemens.com X-Original-From: chris.larson@siemens.com Reply-To: chris.larson@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=-1.2 required=5.0 tests=DKIMWL_WL_MED,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,MAILING_LIST_MULTI, RCVD_IN_MSPIKE_H3,RCVD_IN_MSPIKE_WL,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: Christopher Larson This method is provided to generate signature data for specified target or targets and check for cachability issues without having to complete a build. Submitted at https://groups.google.com/g/isar-users/c/2NB-PXyswq8/m/42BMya5TAQAJ. Signed-off-by: Christopher Larson --- testsuite/cibase.py | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/testsuite/cibase.py b/testsuite/cibase.py index 90591f32..349a79f0 100755 --- a/testsuite/cibase.py +++ b/testsuite/cibase.py @@ -125,6 +125,25 @@ def perform_sstate_populate(self, image_target, **kwargs): # Remove isar configuration so the the following test creates a new one self.delete_from_build_dir('conf') + def perform_signature_lint(self, targets, verbose=False, sources_dir=isar_root, + excluded_tasks=None, **kwargs): + """Generate signature data for target(s) and check for cachability issues.""" + self.configure(**kwargs) + self.move_in_build_dir("tmp", "tmp_before_sstate") + self.bitbake(targets, sig_handler="none") + + verbose_arg = "--verbose" if verbose else "" + excluded_arg = f"--excluded-tasks {','.join(excluded_tasks)}" if excluded_tasks else "" + cmd = f"{isar_root}/scripts/isar-sstate lint --lint-stamps {self.build_dir}/tmp/stamps " \ + f"--build-dir {self.build_dir} --sources-dir {sources_dir} {verbose_arg} {excluded_arg}" + self.log.info(f"Running: {cmd}") + exit_status, output = process.getstatusoutput(cmd, ignore_status=True) + if exit_status > 0: + ansi_escape = re.compile(r'\x1B(?:[@-Z\\-_]|\[[0-?]*[ -/]*[@-~])') + for line in output.splitlines(): + self.log.error(ansi_escape.sub('', line)) + self.fail("Detected cachability issues") + def perform_sstate_test(self, image_target, package_target, **kwargs): def check_executed_tasks(target, expected): taskorder_file = glob.glob(f'{self.build_dir}/tmp/work/*/{target}/*/temp/log.task_order')