From patchwork Thu Feb 6 13:18:09 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Yoann Congal X-Patchwork-Id: 56763 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from aws-us-west-2-korg-lkml-1.web.codeaurora.org (localhost.localdomain [127.0.0.1]) by smtp.lore.kernel.org (Postfix) with ESMTP id 588D8C02194 for ; Thu, 6 Feb 2025 13:18:35 +0000 (UTC) Received: from mail-ed1-f48.google.com (mail-ed1-f48.google.com [209.85.208.48]) by mx.groups.io with SMTP id smtpd.web11.40716.1738847907508588924 for ; Thu, 06 Feb 2025 05:18:28 -0800 Authentication-Results: mx.groups.io; dkim=pass header.i=@smile.fr header.s=google header.b=AijcGHAF; spf=pass (domain: smile.fr, ip: 209.85.208.48, mailfrom: yoann.congal@smile.fr) Received: by mail-ed1-f48.google.com with SMTP id 4fb4d7f45d1cf-5d9837f201aso3904745a12.0 for ; Thu, 06 Feb 2025 05:18:27 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=smile.fr; s=google; t=1738847905; x=1739452705; darn=lists.yoctoproject.org; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to; bh=tIcv9mnMozJmU98vJxxjWQXwmEds5SL9q2rGDbhoAs4=; b=AijcGHAFLlsadn855NFxpLHfB6HipdUn/pYERwgD9Jj1o7nhVy8lf/pGJmQAlYnHzD k+GCPJJ5ohPrFkabrCnQ4U8qBpk2HVr5wHeeD29MBXtfCzHJkzf9nVrOsiz90hWVpGOC OtyR2NHRs5RnN5mKLTUr+/6GP5EYiPGyKcIbA= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1738847905; x=1739452705; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=tIcv9mnMozJmU98vJxxjWQXwmEds5SL9q2rGDbhoAs4=; b=FKw0aOCNsIewvQgipnUZtLG+WAi0jNbpJROPRguC+u9eqdbvyN6/5XAgORx6Dsl2x2 DEZ2umvn7cEPSjLVdOrja3UcuGRB0Nm6J1UZcP6y9HYvpkUTYRIxUS66pznF4gj6CrQp 3edoVhNMvWhIgTHQ9091NDnQ0+RgKMViYZ1/Q6gEEsgK+c4NzaVRw6vmF+EbfN9d9fs6 0g7xdgTao2qGnjJBZcxcFdckgzHHffe0xxkK66RfNMYjcTmc7Be9jpNnm6BPUZ91waz2 3ACuZCQQwEwG4q+dX7wnq0drSHAa92fAnkBAzuMyzp6ZuU6VC4xU8rsP+rSOrJLVvPzJ s12w== X-Gm-Message-State: AOJu0YwxUnwfZg3uPTveIMd/bQeGsW2Z005F5RLEIrTWqRVzImyqtGgB cs8MG35L1MWj73ZzKncuemuaSu7G5EA1m0+ecK6XIyyu3EbGVnQHw3itvHMUIvCM9Hpl8zmMQzQ N X-Gm-Gg: ASbGncu9e+cjYTs5QyywUueVJfZX3XXcWeKJ323sIhpAXEK+arRXBm9buMyICIbK/kH 2HNpj9uGGyLIKcOdlVF7yAxZG3q5YKU256wOgayBg/aIufw1vJGy3lPVRFLCT+ndW0DZDFmnjWg WATI9ZIJFI3xDEZZ/9EGIWcEdaYp2brgc0/+DnODbjdTZBpdYXpsrztIdjyhfg3QuDTFrcG4MCa cLfbgQuScSsczH26jEsiZMEvBvr3nV7mElX16hCd0GokJhGky2ByhvJC//OkWNaLe3k2H8rI9Mu zrYYc2pZhH1IgKx5yn6OC/ZOvJDqGsxcziwHaVlSMykeOS+e7G+FU2bRDaX/44jKeUg9ztrJOUj 6+K5mD1PRzyG89uoerX+BME0KyPEJ X-Google-Smtp-Source: AGHT+IHV3Hu0n85hhy/jZV3klGUy7XFOnEOSBQtxRIgsBZOUrGAJGqAZ4CPaWT3Ki6Mknqket3ALsg== X-Received: by 2002:a05:6402:2087:b0:5dc:c3c6:5826 with SMTP id 4fb4d7f45d1cf-5dcecca9240mr3233113a12.7.1738847905341; Thu, 06 Feb 2025 05:18:25 -0800 (PST) Received: from P-ASN-ECS-830T8C3.idf.intranet (static-css-ccs-204145.business.bouyguestelecom.com. [176.157.204.145]) by smtp.gmail.com with ESMTPSA id 4fb4d7f45d1cf-5dcf1b815c8sm898568a12.42.2025.02.06.05.18.24 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 06 Feb 2025 05:18:25 -0800 (PST) From: Yoann Congal To: docs@lists.yoctoproject.org Cc: Yoann Congal , Guillaume Swaenepoel Subject: [PATCH 1/3] ref-manual/variables: document OEQA_REPRODUCIBLE_TEST_LEAF_TARGETS Date: Thu, 6 Feb 2025 14:18:09 +0100 Message-Id: <20250206131811.86935-1-yoann.congal@smile.fr> X-Mailer: git-send-email 2.39.5 MIME-Version: 1.0 List-Id: X-Webhook-Received: from li982-79.members.linode.com [45.33.32.79] by aws-us-west-2-korg-lkml-1.web.codeaurora.org with HTTPS for ; Thu, 06 Feb 2025 13:18:35 -0000 X-Groupsio-URL: https://lists.yoctoproject.org/g/docs/message/6258 From: Yoann Congal This documents the variable used in the "automate testing a single recipe's reproducibility" feature [YOCTO #15701] Signed-off-by: Yoann Congal Reviewed-by: Guillaume Swaenepoel --- documentation/ref-manual/variables.rst | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/documentation/ref-manual/variables.rst b/documentation/ref-manual/variables.rst index 47d4e814f..32e91b6db 100644 --- a/documentation/ref-manual/variables.rst +++ b/documentation/ref-manual/variables.rst @@ -5802,6 +5802,11 @@ system and gives an overview of their function and contents. For additional information on how this variable is used, see the initialization script. + :term:`OEQA_REPRODUCIBLE_TEST_LEAF_TARGETS` + Set build target for build reproducibility testing but activate + :ref:`shared state ` build + for most dependencies. See :doc:`/test-manual/reproducible-builds`. + :term:`OEQA_REPRODUCIBLE_TEST_PACKAGE` Set the package manager(s) for build reproducibility testing. See :yocto_git:`reproducible.py ` From patchwork Thu Feb 6 13:18:10 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Yoann Congal X-Patchwork-Id: 56764 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from aws-us-west-2-korg-lkml-1.web.codeaurora.org (localhost.localdomain [127.0.0.1]) by smtp.lore.kernel.org (Postfix) with ESMTP id 59A88C0219C for ; Thu, 6 Feb 2025 13:18:35 +0000 (UTC) Received: from mail-ej1-f47.google.com (mail-ej1-f47.google.com [209.85.218.47]) by mx.groups.io with SMTP id smtpd.web10.40483.1738847908278449468 for ; Thu, 06 Feb 2025 05:18:28 -0800 Authentication-Results: mx.groups.io; dkim=pass header.i=@smile.fr header.s=google header.b=K5Wz/OZx; spf=pass (domain: smile.fr, ip: 209.85.218.47, mailfrom: yoann.congal@smile.fr) Received: by mail-ej1-f47.google.com with SMTP id a640c23a62f3a-ab737e5674bso173381566b.1 for ; Thu, 06 Feb 2025 05:18:28 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=smile.fr; s=google; t=1738847906; x=1739452706; darn=lists.yoctoproject.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=mTKhopSaVB3vrcGBZnza1DCHhdCiWhGIPMQGDNM9k8g=; b=K5Wz/OZx44iBytLQ552KX/r5RyJXEc9Vwtip+CRLqVhYWNUiGZ6gq4I1SrO7j7IGBR 83Otc9NtiYI8AhnYp7Wa4n3Y9ED4qUrGI3b8Qgvc1HuYqib82wL0QkHybWeqDuXzKv4O 7A/TFya1/elygz38yeYpEKYKLLCpmydEaCkCY= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1738847906; x=1739452706; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=mTKhopSaVB3vrcGBZnza1DCHhdCiWhGIPMQGDNM9k8g=; b=SSpGTlSUKIxzuuBYLoctRWHsfnHNvkrTKLhtgLdP6QEmdpvwOxRGbPwnHadU81eID5 rNuO3Y4pSWH6mlDxWqWXTJYrBHMSxJHXf32DES3eDCnCGS3EySxFOv+tXHB9z7Sy4C4e gVDCOA5OqQa3gNnEVEvrCylnQavHYcVhzINg/n8eaUZ/Rb9tJ1Ct95PJujQ73DIvxMka 29/sxz+F/mdY6J/Or3/c1yPmm/xlE/vq268tjiOIaNzALzbCwi7mmR+9scuNsJTtZLJX KeVGOjw2fL7jzmLpM3lxqyRwXFOO/jDIG0oMt+f585BDPBbICCBPqPTt215pCTeaouo2 xgVA== X-Gm-Message-State: AOJu0YyNDA9dafMFNtHIRcViz/Aq5q2vvOf+BjWq8k2l+OUl+Omh44LY vV8Ndm4XkKpqbYnHj4lAMnLj+8K4XejVJ3OoH1t7EyZ3wmF5tdrqK8JYMjZGDZDZlpqubQGgjOg F X-Gm-Gg: ASbGnctgC3dvUUn4SITX5n8rRVivaToKonuT4LWZ443I5Hq8tg8i+EBDARnOXnD1FBo AY7F4M/WZLYQ3Vw5cu6fgWPU2Kzqoofm+cr0jQlEs0hdMKiaXiwU+O0MNYEyYL8Zg+MDVT55otb 1AKkP2oWipURjLIDHfCIePzGcwlTlqadu4PC5x9Q5CZpVHhVerN/a4paQwMpvdc7h69DWLLAJGl jVqCiIrOyXjPMbFlUYX9q5wmxbEf6jw/R2VUmPwRPn7ML40KQHp4oP6JW0ni2qbIxV8WYlDXdce 0IludOyfIw1eXKy6SygwWqeLhWdo9e29MPJFLxzDDJpIigDrrKuorv+WoplPAPgUywlAG7VK5JD u8sX9ukKrzkgKNCxA2zxGBncmA1oJ X-Google-Smtp-Source: AGHT+IGVW/c6QKcpNdT0LqWfO3uj650wU7jqpT27UYPvMAXLPm6ag4jHFcqTXkz9nbv4fIYidEED7A== X-Received: by 2002:a17:907:9688:b0:aa6:7a81:3077 with SMTP id a640c23a62f3a-ab75e322c85mr780382266b.54.1738847906481; Thu, 06 Feb 2025 05:18:26 -0800 (PST) Received: from P-ASN-ECS-830T8C3.idf.intranet (static-css-ccs-204145.business.bouyguestelecom.com. [176.157.204.145]) by smtp.gmail.com with ESMTPSA id 4fb4d7f45d1cf-5dcf1b815c8sm898568a12.42.2025.02.06.05.18.25 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 06 Feb 2025 05:18:25 -0800 (PST) From: Yoann Congal To: docs@lists.yoctoproject.org Cc: Yoann Congal , Guillaume Swaenepoel Subject: [PATCH 2/3] reproducible-builds: change/add titles in the "How" section Date: Thu, 6 Feb 2025 14:18:10 +0100 Message-Id: <20250206131811.86935-2-yoann.congal@smile.fr> X-Mailer: git-send-email 2.39.5 In-Reply-To: <20250206131811.86935-1-yoann.congal@smile.fr> References: <20250206131811.86935-1-yoann.congal@smile.fr> MIME-Version: 1.0 List-Id: X-Webhook-Received: from li982-79.members.linode.com [45.33.32.79] by aws-us-west-2-korg-lkml-1.web.codeaurora.org with HTTPS for ; Thu, 06 Feb 2025 13:18:35 -0000 X-Groupsio-URL: https://lists.yoctoproject.org/g/docs/message/6259 From: Yoann Congal This is preparation work for the following commit. Signed-off-by: Yoann Congal Reviewed-by: Guillaume Swaenepoel --- documentation/test-manual/reproducible-builds.rst | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/documentation/test-manual/reproducible-builds.rst b/documentation/test-manual/reproducible-builds.rst index aaf2e4541..b9f671d68 100644 --- a/documentation/test-manual/reproducible-builds.rst +++ b/documentation/test-manual/reproducible-builds.rst @@ -122,9 +122,12 @@ The project's current reproducibility status can be seen at You can also check the reproducibility status on the Autobuilder: :yocto_ab:`/valkyrie/#/builders/reproducible`. -=============================== -Can I test my layer or recipes? -=============================== +=================================== +How can I test my layer or recipes? +=================================== + +With world build +~~~~~~~~~~~~~~~~ Once again, you can run a ``world`` test using the :ref:`oe-selftest ` @@ -132,6 +135,9 @@ command provided above. This functionality is implemented in :oe_git:`meta/lib/oeqa/selftest/cases/reproducible.py `. +Subclassing the test +~~~~~~~~~~~~~~~~~~~~ + You could subclass the test and change ``targets`` to a different target. You may also change ``sstate_targets`` which would allow you to "pre-cache" some From patchwork Thu Feb 6 13:18:11 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Yoann Congal X-Patchwork-Id: 56762 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from aws-us-west-2-korg-lkml-1.web.codeaurora.org (localhost.localdomain [127.0.0.1]) by smtp.lore.kernel.org (Postfix) with ESMTP id 58C5DC02196 for ; Thu, 6 Feb 2025 13:18:35 +0000 (UTC) Received: from mail-ej1-f46.google.com (mail-ej1-f46.google.com [209.85.218.46]) by mx.groups.io with SMTP id smtpd.web11.40719.1738847909209713312 for ; Thu, 06 Feb 2025 05:18:29 -0800 Authentication-Results: mx.groups.io; dkim=pass header.i=@smile.fr header.s=google header.b=FnBf4HGP; spf=pass (domain: smile.fr, ip: 209.85.218.46, mailfrom: yoann.congal@smile.fr) Received: by mail-ej1-f46.google.com with SMTP id a640c23a62f3a-ab744d5e567so166423466b.1 for ; Thu, 06 Feb 2025 05:18:28 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=smile.fr; s=google; t=1738847907; x=1739452707; darn=lists.yoctoproject.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=28PNpSUxtiBSoZgUEUn5+a9s/JMhZ6DUMT9yfY8q57A=; b=FnBf4HGP88hYnEsUdzMiwZrm803KjFq3lhPs8Z23b+dwp/0uyLzK+ivGhFtL3vabyj y7eHdmxIlIBchtfp1sxzQhAhTutSLfL7ghT2P7d1Xe6b+IM9uYrG9/f2OWL/EyibkxaY jmpGc3hHW0U+GkX9p53Ww8HkI3F0hssFuuvJ0= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1738847907; x=1739452707; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=28PNpSUxtiBSoZgUEUn5+a9s/JMhZ6DUMT9yfY8q57A=; b=G30mZ5YITGwUG7kZG23BJE0YMYBGfKTjdkBtgLD3JZAXTNvp8iAT9gooD29enJorYu +fXZtkxOyZ2opl0YaQ6I6Dr5ydMXli/nWN7EPbmFUZLIbRoi6g8ORIBf07e5QY4vZZGu whrwLMU4LXG8cd9I5qZeR2YiXDASML+oOOYP9PgdtePdiQf77ZlmQfV1WzrJMnal5deL 4NnWlxIiUL9b1M+21CA5fRmlpPd+3UNbHksC8A9O6satTdSmIBIPRss/TGZoQFGmlmtA 5iFt9avVJV16b/HwcTtg6Xyql5pOiJ36YeT41GwTnzXvHWLdJUXjvQKpj5t0EBYO7Hp3 JU5g== X-Gm-Message-State: AOJu0YxC9P5wL3qDwt/PYDnRnk2rhHSCUYEtJFj8quirkJOPnx0VoW/H yRFGJo7r0zFrRLNViv4stnFImCpnufAxEPQ0HRGDmelzGaWeIqnRPziXDc/msw3b3k+v7aK8S+k 4 X-Gm-Gg: ASbGnctdzIAynrMI4s/jEknYRrVs+X6/1vXkk6xY8lgKFRMoT/8iOPVk4Wl+1NID6D2 f0AOBCCLqvsJ0CHxKCkK6wDOdYBUj7N94zbiHtxPUA9tqHwCQ5UrfJoBLdiO0tJoeur79hss6uN Q1AAAPxKAiLkTtkwWNSu8SL9+rK7ItpokpjriEZf3Z+akq5yR0uBJ8dKw0amQgzkDGSz8u16+bs sJiu4wLe/rGEO3YpR49hVsBYbaNmXDvo6k0q4Wzn7zwZacJa2pmXNUSQG17Lt8yxSoaC8lXvdkU oIZkLsD8VEOrLFyLfJ27FT3RMMhSQZoyxY/N/YktN3wafsG4qQ8zdz+1KTjOI9o4790glCdpm7W KOU3GVqNCV/F2J2+JAD0C0x5A7m8X X-Google-Smtp-Source: AGHT+IHXfMu2MkXnih0jCsCM4/7WfLBg1JzLNGDUWCAwXwm5q6qW9doewNqv5kl/G+N3rugUVe1CzQ== X-Received: by 2002:a17:907:7b9f:b0:ab6:ef92:c238 with SMTP id a640c23a62f3a-ab76e9876bdmr389670166b.20.1738847907301; Thu, 06 Feb 2025 05:18:27 -0800 (PST) Received: from P-ASN-ECS-830T8C3.idf.intranet (static-css-ccs-204145.business.bouyguestelecom.com. [176.157.204.145]) by smtp.gmail.com with ESMTPSA id 4fb4d7f45d1cf-5dcf1b815c8sm898568a12.42.2025.02.06.05.18.26 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 06 Feb 2025 05:18:26 -0800 (PST) From: Yoann Congal To: docs@lists.yoctoproject.org Cc: Yoann Congal , Guillaume Swaenepoel Subject: [PATCH 3/3] reproducible-builds: add a "How to" section with OEQA* variables Date: Thu, 6 Feb 2025 14:18:11 +0100 Message-Id: <20250206131811.86935-3-yoann.congal@smile.fr> X-Mailer: git-send-email 2.39.5 In-Reply-To: <20250206131811.86935-1-yoann.congal@smile.fr> References: <20250206131811.86935-1-yoann.congal@smile.fr> MIME-Version: 1.0 List-Id: X-Webhook-Received: from li982-79.members.linode.com [45.33.32.79] by aws-us-west-2-korg-lkml-1.web.codeaurora.org with HTTPS for ; Thu, 06 Feb 2025 13:18:35 -0000 X-Groupsio-URL: https://lists.yoctoproject.org/g/docs/message/6260 From: Yoann Congal Shows an example of the new variable OEQA_REPRODUCIBLE_TEST_LEAF_TARGETS and still mention OEQA_REPRODUCIBLE_TEST_TARGET/SSTATE_TARGETS that were shown earlier. Signed-off-by: Yoann Congal Reviewed-by: Guillaume Swaenepoel --- .../test-manual/reproducible-builds.rst | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/documentation/test-manual/reproducible-builds.rst b/documentation/test-manual/reproducible-builds.rst index b9f671d68..909ac5216 100644 --- a/documentation/test-manual/reproducible-builds.rst +++ b/documentation/test-manual/reproducible-builds.rst @@ -145,3 +145,21 @@ set of recipes before the test, meaning they are excluded from reproducibility testing. As a practical example, you could set ``sstate_targets`` to ``core-image-sato``, then setting ``targets`` to ``core-image-sato-sdk`` would run reproducibility tests only on the targets belonging only to ``core-image-sato-sdk``. + +Using OEQA_REPRODUCIBLE_TEST_* variables +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +If you want to test the reproducibility of a set of recipe, you can define +:term:`OEQA_REPRODUCIBLE_TEST_LEAF_TARGETS`, in your local.conf:: + + OEQA_REPRODUCIBLE_TEST_LEAF_TARGETS = "my-recipe" + +This will test the reproducibility of ``my-recipe`` but will use the +:ref:`Shared State ` for most its +dependencies. + +You can have finer control on the test with: + +- :term:`OEQA_REPRODUCIBLE_TEST_TARGET`: lists recipes to be built, +- :term:`OEQA_REPRODUCIBLE_TEST_SSTATE_TARGETS`: lists recipes that will + be built using :ref:`Shared State `.