Message ID | 20241219145225.3367912-1-tgamblin@baylibre.com |
---|---|
State | Under Review |
Headers | show |
Series | [v2] reproducible-builds.rst: show how to build a single package | expand |
Hi Trevor, On Thu Dec 19, 2024 at 3:52 PM CET, Trevor Gamblin wrote: > Add a bit to the "Can we prove the project is reproducible?" section to > show how OEQA_REPRODUCIBLE_TEST_TARGET can be used to test a single > package (rather than the world build), as this may be useful for > maintainers. > > [YOCTO #15619] > > Signed-off-by: Trevor Gamblin <tgamblin@baylibre.com> > --- > v2 adds the Bugzilla ID to the commit message, since this is logged in the > system already. > > .../test-manual/reproducible-builds.rst | 22 +++++++++++++------ > 1 file changed, 15 insertions(+), 7 deletions(-) > > diff --git a/documentation/test-manual/reproducible-builds.rst b/documentation/test-manual/reproducible-builds.rst > index 91f94a5c7..d581155eb 100644 > --- a/documentation/test-manual/reproducible-builds.rst > +++ b/documentation/test-manual/reproducible-builds.rst > @@ -91,13 +91,21 @@ run:: > > oe-selftest -r reproducible.ReproducibleTests.test_reproducible_builds > > -This defaults to including a ``world`` build so, if other layers are added, it would > -also run the tests for recipes in the additional layers. Different build targets > -can be defined using the :term:`OEQA_REPRODUCIBLE_TEST_TARGET` variable in ``local.conf``. > -The first build will be run using :ref:`Shared State <overview-manual/concepts:Shared State>` if > -available, the second build explicitly disables > -:ref:`Shared State <overview-manual/concepts:Shared State>` except for recipes defined in > -the :term:`OEQA_REPRODUCIBLE_TEST_SSTATE_TARGETS` variable, and builds on the > +This defaults to including a ``world`` build so, if other layers are added, it > +would also run the tests for recipes in the additional layers. Different build > +targets can be defined using the :term:`OEQA_REPRODUCIBLE_TEST_TARGET` variable > +in ``local.conf``. For example, running reproducibility tests for only the > +``python3-numpy`` recipe can be done by setting:: > + > + OEQA_REPRODUCIBLE_TEST_TARGET = "python3-numpy" > + > +in local.conf before running the ``oe-selftest`` command shown above. > + > +Reproducibility builds the target list twice. The first build will be run using > +:ref:`Shared State <overview-manual/concepts:Shared State>` if available, the > +second build explicitly disables :ref:`Shared State > +<overview-manual/concepts:Shared State>` except for recipes defined in the > +:term:`OEQA_REPRODUCIBLE_TEST_SSTATE_TARGETS` variable, and builds on the > specific host the build is running on. This means we can test reproducibility > builds between different host distributions over time on the Autobuilder. Not for this patch but I think there should be a :term: for the Autobuilder, for the people not aware of what it is. I'll take a note of this. Otherwise: Reviewed-by: Antonin Godard <antonin.godard@bootlin.com> Thank you! Antonin
diff --git a/documentation/test-manual/reproducible-builds.rst b/documentation/test-manual/reproducible-builds.rst index 91f94a5c7..d581155eb 100644 --- a/documentation/test-manual/reproducible-builds.rst +++ b/documentation/test-manual/reproducible-builds.rst @@ -91,13 +91,21 @@ run:: oe-selftest -r reproducible.ReproducibleTests.test_reproducible_builds -This defaults to including a ``world`` build so, if other layers are added, it would -also run the tests for recipes in the additional layers. Different build targets -can be defined using the :term:`OEQA_REPRODUCIBLE_TEST_TARGET` variable in ``local.conf``. -The first build will be run using :ref:`Shared State <overview-manual/concepts:Shared State>` if -available, the second build explicitly disables -:ref:`Shared State <overview-manual/concepts:Shared State>` except for recipes defined in -the :term:`OEQA_REPRODUCIBLE_TEST_SSTATE_TARGETS` variable, and builds on the +This defaults to including a ``world`` build so, if other layers are added, it +would also run the tests for recipes in the additional layers. Different build +targets can be defined using the :term:`OEQA_REPRODUCIBLE_TEST_TARGET` variable +in ``local.conf``. For example, running reproducibility tests for only the +``python3-numpy`` recipe can be done by setting:: + + OEQA_REPRODUCIBLE_TEST_TARGET = "python3-numpy" + +in local.conf before running the ``oe-selftest`` command shown above. + +Reproducibility builds the target list twice. The first build will be run using +:ref:`Shared State <overview-manual/concepts:Shared State>` if available, the +second build explicitly disables :ref:`Shared State +<overview-manual/concepts:Shared State>` except for recipes defined in the +:term:`OEQA_REPRODUCIBLE_TEST_SSTATE_TARGETS` variable, and builds on the specific host the build is running on. This means we can test reproducibility builds between different host distributions over time on the Autobuilder.
Add a bit to the "Can we prove the project is reproducible?" section to show how OEQA_REPRODUCIBLE_TEST_TARGET can be used to test a single package (rather than the world build), as this may be useful for maintainers. [YOCTO #15619] Signed-off-by: Trevor Gamblin <tgamblin@baylibre.com> --- v2 adds the Bugzilla ID to the commit message, since this is logged in the system already. .../test-manual/reproducible-builds.rst | 22 +++++++++++++------ 1 file changed, 15 insertions(+), 7 deletions(-)