diff mbox series

[v2,3/3] reproducible-builds: add a "How to" section with OEQA* variables

Message ID 20250206215711.154194-3-yoann.congal@smile.fr
State Superseded
Headers show
Series [v2,1/3] ref-manual/variables: document OEQA_REPRODUCIBLE_TEST_LEAF_TARGETS | expand

Commit Message

Yoann Congal Feb. 6, 2025, 9:57 p.m. UTC
From: Yoann Congal <yoann.congal@smile.fr>

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 <yoann.congal@smile.fr>
Reviewed-by: Guillaume Swaenepoel <guillaume.swaenepoel@smile.fr>
---
v1->v2: Quentin's review
* tick-quote variable in title
* a set of recipeS
* 3 spaces to align a code block (not 4)
---
 .../test-manual/reproducible-builds.rst        | 18 ++++++++++++++++++
 1 file changed, 18 insertions(+)

Comments

Quentin Schulz Feb. 7, 2025, 9:13 a.m. UTC | #1
Hi Yoann,

On 2/6/25 10:57 PM, Yoann Congal via lists.yoctoproject.org wrote:
> From: Yoann Congal <yoann.congal@smile.fr>
> 
> 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 <yoann.congal@smile.fr>
> Reviewed-by: Guillaume Swaenepoel <guillaume.swaenepoel@smile.fr>
> ---
> v1->v2: Quentin's review
> * tick-quote variable in title
> * a set of recipeS
> * 3 spaces to align a code block (not 4)
> ---
>   .../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..77c15d6e2 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

Sorry, I meant double-tick quoting, the same way we do for the classes 
in documentation/ref-manual/classes.rst, c.f.

``allarch``
===========

My grep-fu didn't return anything with :term: in titles, so I guess 
that's why we're going with double-quotes typically?

Looks good otherwise (see comments on v1 I just sent for the end of the 
diff in v2).

Cheers,
Quentin
Yoann Congal Feb. 9, 2025, 10:59 p.m. UTC | #2
Le 07/02/2025 à 10:13, Quentin Schulz a écrit :
> Hi Yoann,
> 
> On 2/6/25 10:57 PM, Yoann Congal via lists.yoctoproject.org wrote:
>> From: Yoann Congal <yoann.congal@smile.fr>
>>
>> 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 <yoann.congal@smile.fr>
>> Reviewed-by: Guillaume Swaenepoel <guillaume.swaenepoel@smile.fr>
>> ---
>> v1->v2: Quentin's review
>> * tick-quote variable in title
>> * a set of recipeS
>> * 3 spaces to align a code block (not 4)
>> ---
>>   .../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..77c15d6e2 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
> 
> Sorry, I meant double-tick quoting, the same way we do for the classes
> in documentation/ref-manual/classes.rst, c.f.

I'll fix in v3.

> ``allarch``
> ===========
> 
> My grep-fu didn't return anything with :term: in titles, so I guess
> that's why we're going with double-quotes typically?

That does ring a bell:
https://git.yoctoproject.org/yocto-docs/commit/?id=b9e19a00a3aac05a2cdd35b61dfae6d5a1a9c648
...but in this case the linkage works (but the link is rendered as black
wheras the rest of the title is blue, looks a bit weird IMHO).
Also, since I don't point a single variable but the whole
OEQA_REPRODUCIBLE_TEST_* group, I'd rather leave it with double quotes.


> Looks good otherwise (see comments on v1 I just sent for the end of the
> diff in v2).
> 
> Cheers,
> Quentin

Thanks!
Quentin Schulz Feb. 10, 2025, 4:39 p.m. UTC | #3
Hi Yoann,

On 2/9/25 11:59 PM, Yoann Congal wrote:
> 
> 
> Le 07/02/2025 à 10:13, Quentin Schulz a écrit :
>> Hi Yoann,
>>
>> On 2/6/25 10:57 PM, Yoann Congal via lists.yoctoproject.org wrote:
>>> From: Yoann Congal <yoann.congal@smile.fr>
>>>
>>> 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 <yoann.congal@smile.fr>
>>> Reviewed-by: Guillaume Swaenepoel <guillaume.swaenepoel@smile.fr>
>>> ---
>>> v1->v2: Quentin's review
>>> * tick-quote variable in title
>>> * a set of recipeS
>>> * 3 spaces to align a code block (not 4)
>>> ---
>>>    .../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..77c15d6e2 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
>>
>> Sorry, I meant double-tick quoting, the same way we do for the classes
>> in documentation/ref-manual/classes.rst, c.f.
> 
> I'll fix in v3.
> 
>> ``allarch``
>> ===========
>>
>> My grep-fu didn't return anything with :term: in titles, so I guess
>> that's why we're going with double-quotes typically?
> 
> That does ring a bell:
> https://git.yoctoproject.org/yocto-docs/commit/?id=b9e19a00a3aac05a2cdd35b61dfae6d5a1a9c648
> ...but in this case the linkage works (but the link is rendered as black

Ahah! Thanks for the pointer :)

> wheras the rest of the title is blue, looks a bit weird IMHO).
> Also, since I don't point a single variable but the whole
> OEQA_REPRODUCIBLE_TEST_* group, I'd rather leave it with double quotes.
> 

We actually do have a bunch of those already:

:term:`SYSROOT_DIRS* <SYSROOT_DIRS>` variables.
See the :term:`SYSROOT_* <SYSROOT_DESTDIR>` variables
:term:`module_conf_* <module_conf>` variable.

etc.

Cheers,
Quentin
Yoann Congal Feb. 11, 2025, 11:48 p.m. UTC | #4
Le lun. 10 févr. 2025 à 17:39, Quentin Schulz <quentin.schulz@cherry.de> a
écrit :

> Hi Yoann,
>
> On 2/9/25 11:59 PM, Yoann Congal wrote:
> >
> >
> > Le 07/02/2025 à 10:13, Quentin Schulz a écrit :
> >> Hi Yoann,
> >>
> >> On 2/6/25 10:57 PM, Yoann Congal via lists.yoctoproject.org wrote:
> >>> From: Yoann Congal <yoann.congal@smile.fr>
> >>>
> >>> 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 <yoann.congal@smile.fr>
> >>> Reviewed-by: Guillaume Swaenepoel <guillaume.swaenepoel@smile.fr>
> >>> ---
> >>> v1->v2: Quentin's review
> >>> * tick-quote variable in title
> >>> * a set of recipeS
> >>> * 3 spaces to align a code block (not 4)
> >>> ---
> >>>    .../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..77c15d6e2 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
> >>
> >> Sorry, I meant double-tick quoting, the same way we do for the classes
> >> in documentation/ref-manual/classes.rst, c.f.
> >
> > I'll fix in v3.
> >
> >> ``allarch``
> >> ===========
> >>
> >> My grep-fu didn't return anything with :term: in titles, so I guess
> >> that's why we're going with double-quotes typically?
> >
> > That does ring a bell:
> >
> https://git.yoctoproject.org/yocto-docs/commit/?id=b9e19a00a3aac05a2cdd35b61dfae6d5a1a9c648
> > ...but in this case the linkage works (but the link is rendered as black
>
> Ahah! Thanks for the pointer :)
>
> > wheras the rest of the title is blue, looks a bit weird IMHO).
> > Also, since I don't point a single variable but the whole
> > OEQA_REPRODUCIBLE_TEST_* group, I'd rather leave it with double quotes.
> >
>
> We actually do have a bunch of those already:
>
> :term:`SYSROOT_DIRS* <SYSROOT_DIRS>` variables.
> See the :term:`SYSROOT_* <SYSROOT_DESTDIR>` variables
> :term:`module_conf_* <module_conf>` variable.
>
> etc.
>

I've missed this review for v4, I've sent v5 with it.

Thanks!


> Cheers,
> Quentin
>
diff mbox series

Patch

diff --git a/documentation/test-manual/reproducible-builds.rst b/documentation/test-manual/reproducible-builds.rst
index b9f671d68..77c15d6e2 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 recipes, 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 <overview-manual/concepts: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 <overview-manual/concepts:Shared State>`.