[PATCH] test-in-container: Install locales into the test container

classic Classic list List threaded Threaded
29 messages Options
12
Reply | Threaded
Open this post in threaded view
|

Re: [PATCH] test-container: Install with $(all-subdirs) [BZ #24794]

Tulio Magno Quites Machado Filho-3
Stefan Liebler <[hidden email]> writes:

> starting with this commit, I see the following fail:
> cat nss/tst-nss-files-hosts-long.out
> error: tst-nss-files-hosts-long.c:35: ahostsv4 failed
> error: 1 test failures
>
> Does anybody else also see this fail?

I reproduced it here.
I'm sorry, I thought it was a bug hidden by the bug fixed in my previous
patch.

> While running "make check" I've recognized the output of
> support/shell-container.c:
> sh: execing getent failed: No such file or directory File
> sh: execing /usr/bin/makedb failed: No such file or directory File
>
> And indeed getent does not exist in <build-dir>/testroot.root or
> <build-dir>/testroot.pristine. Without this commit, it was available.
>
> In older logs, I've found these commands:
> /usr/bin/install -c build/nss/getent
> build/testroot.pristine/usr/bin/getent.new
> /usr/bin/install -c build/nss/makedb
> build/testroot.pristine/usr/bin/makedb.new
> mv -f build/testroot.pristine/usr/bin/getent.new
> build/testroot.pristine/usr/bin/getent
> mv -f build/testroot.pristine/usr/bin/makedb.new
> build/testroot.pristine/usr/bin/makedb
>
> Can anybody help?

I'll take a look and see what's missing.

--
Tulio Magno
Reply | Threaded
Open this post in threaded view
|

Re: [PATCH] test-container: Install with $(all-subdirs) [BZ #24794]

Carlos O'Donell-6
On 7/24/19 11:32 AM, Tulio Magno Quites Machado Filho wrote:

> Stefan Liebler <[hidden email]> writes:
>
>> starting with this commit, I see the following fail:
>> cat nss/tst-nss-files-hosts-long.out
>> error: tst-nss-files-hosts-long.c:35: ahostsv4 failed
>> error: 1 test failures
>>
>> Does anybody else also see this fail?
>
> I reproduced it here.
> I'm sorry, I thought it was a bug hidden by the bug fixed in my previous
> patch.
>
>> While running "make check" I've recognized the output of
>> support/shell-container.c:
>> sh: execing getent failed: No such file or directory File
>> sh: execing /usr/bin/makedb failed: No such file or directory File
>>
>> And indeed getent does not exist in <build-dir>/testroot.root or
>> <build-dir>/testroot.pristine. Without this commit, it was available.
>>
>> In older logs, I've found these commands:
>> /usr/bin/install -c build/nss/getent
>> build/testroot.pristine/usr/bin/getent.new
>> /usr/bin/install -c build/nss/makedb
>> build/testroot.pristine/usr/bin/makedb.new
>> mv -f build/testroot.pristine/usr/bin/getent.new
>> build/testroot.pristine/usr/bin/getent
>> mv -f build/testroot.pristine/usr/bin/makedb.new
>> build/testroot.pristine/usr/bin/makedb
>>
>> Can anybody help?
>
> I'll take a look and see what's missing.

Regression tests catching regressions! ;-)

--
Cheers,
Carlos.
Reply | Threaded
Open this post in threaded view
|

Re: [PATCH] test-container: Install with $(all-subdirs) [BZ #24794]

DJ Delorie-2
In reply to this post by Tulio Magno Quites Machado Filho-3

Tulio Magno Quites Machado Filho <[hidden email]> writes:
> I'll take a look and see what's missing.

How about this?  The initial setting of subdirs is from Makeconfig:

subdirs = $(sorted-subdirs)

With this change, tst-nss-files-hosts-long passes, where
it failed before with a clean testroot install.

diff --git a/Makefile b/Makefile
index 9fbf705200..ac1125853b 100644
--- a/Makefile
+++ b/Makefile
@@ -402,7 +402,7 @@ ifeq ($(run-built-tests),yes)
   done
 endif
  $(MAKE) install DESTDIR=$(objpfx)testroot.pristine \
-  subdirs='$(all-subdirs)'
+  subdirs='$(sorted-subdirs)'
  touch $(objpfx)testroot.pristine/install.stamp
 
 tests-special-notdir = $(patsubst $(objpfx)%, %, $(tests-special))
Reply | Threaded
Open this post in threaded view
|

[PATCH] test-container: Install with $(sorted-subdirs) [BZ #24794]

Tulio Magno Quites Machado Filho-2
In reply to this post by Tulio Magno Quites Machado Filho-3
Commit 35e038c1d2ccb3a75395662f9c4f28d85a61444f started to use an
incomplete list of subdirs based on $(all-subdirs) causing
testroot.pristine to miss files from nss.

Tested if the list of files in testroot.pristine remains the same.

2019-07-24  Tulio Magno Quites Machado Filho  <[hidden email]>

        [BZ #24794]
        * Makeconfig (all-subdirs): Improved source comments.
        * Makefile (testroot.pristine/install.stamp): Pass
        subdirs='$(sorted-subdirs)' to make install.
---
 Makeconfig | 6 +++---
 Makefile   | 2 +-
 2 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/Makeconfig b/Makeconfig
index 0e386fbc19..fd36c58c04 100644
--- a/Makeconfig
+++ b/Makeconfig
@@ -1267,9 +1267,9 @@ else
 libsupport = $(common-objpfx)support/libsupport.a
 endif
 
-# These are the subdirectories containing the library source.  The order
-# is more or less arbitrary.  The sorting step will take care of the
-# dependencies.
+# This is a partial list of subdirectories containing the library source.
+# The order is more or less arbitrary.  The sorting step will take care of the
+# dependencies and generate sorted-subdirs dynamically.
 all-subdirs = csu assert ctype locale intl catgets math setjmp signal    \
       stdlib stdio-common libio malloc string wcsmbs time dirent    \
       grp pwd posix io termios resource misc socket sysvipc gmon    \
diff --git a/Makefile b/Makefile
index 9fbf705200..ac1125853b 100644
--- a/Makefile
+++ b/Makefile
@@ -402,7 +402,7 @@ ifeq ($(run-built-tests),yes)
   done
 endif
  $(MAKE) install DESTDIR=$(objpfx)testroot.pristine \
-  subdirs='$(all-subdirs)'
+  subdirs='$(sorted-subdirs)'
  touch $(objpfx)testroot.pristine/install.stamp
 
 tests-special-notdir = $(patsubst $(objpfx)%, %, $(tests-special))
--
2.14.5

Reply | Threaded
Open this post in threaded view
|

Re: [PATCH] test-container: Install with $(sorted-subdirs) [BZ #24794]

DJ Delorie-2

Tulio Magno Quites Machado Filho <[hidden email]> writes:
> -  subdirs='$(all-subdirs)'
> +  subdirs='$(sorted-subdirs)'

Considering I posted this as a suggested fix an hour before you did, I'm
going to say LGTM.  Of course, I said that last time too, so maybe we
need an independent confirmation?  ;-)

Reply | Threaded
Open this post in threaded view
|

Re: [PATCH] test-container: Install with $(sorted-subdirs) [BZ #24794]

Szabolcs Nagy-2
In reply to this post by Tulio Magno Quites Machado Filho-2
On 25/07/2019 01:03, Tulio Magno Quites Machado Filho wrote:
> Commit 35e038c1d2ccb3a75395662f9c4f28d85a61444f started to use an
> incomplete list of subdirs based on $(all-subdirs) causing
> testroot.pristine to miss files from nss.
>
> Tested if the list of files in testroot.pristine remains the same.

fwiw with this patch aarch64 buildbot would go back to green.

>
> 2019-07-24  Tulio Magno Quites Machado Filho  <[hidden email]>
>
> [BZ #24794]
> * Makeconfig (all-subdirs): Improved source comments.
> * Makefile (testroot.pristine/install.stamp): Pass
> subdirs='$(sorted-subdirs)' to make install.
> ---
>  Makeconfig | 6 +++---
>  Makefile   | 2 +-
>  2 files changed, 4 insertions(+), 4 deletions(-)
>
> diff --git a/Makeconfig b/Makeconfig
> index 0e386fbc19..fd36c58c04 100644
> --- a/Makeconfig
> +++ b/Makeconfig
> @@ -1267,9 +1267,9 @@ else
>  libsupport = $(common-objpfx)support/libsupport.a
>  endif
>  
> -# These are the subdirectories containing the library source.  The order
> -# is more or less arbitrary.  The sorting step will take care of the
> -# dependencies.
> +# This is a partial list of subdirectories containing the library source.
> +# The order is more or less arbitrary.  The sorting step will take care of the
> +# dependencies and generate sorted-subdirs dynamically.
>  all-subdirs = csu assert ctype locale intl catgets math setjmp signal    \
>        stdlib stdio-common libio malloc string wcsmbs time dirent    \
>        grp pwd posix io termios resource misc socket sysvipc gmon    \
> diff --git a/Makefile b/Makefile
> index 9fbf705200..ac1125853b 100644
> --- a/Makefile
> +++ b/Makefile
> @@ -402,7 +402,7 @@ ifeq ($(run-built-tests),yes)
>    done
>  endif
>   $(MAKE) install DESTDIR=$(objpfx)testroot.pristine \
> -  subdirs='$(all-subdirs)'
> +  subdirs='$(sorted-subdirs)'
>   touch $(objpfx)testroot.pristine/install.stamp
>  
>  tests-special-notdir = $(patsubst $(objpfx)%, %, $(tests-special))
>

Reply | Threaded
Open this post in threaded view
|

Re: [PATCH] test-container: Install with $(sorted-subdirs) [BZ #24794]

Carlos O'Donell-6
On 7/25/19 8:46 AM, Szabolcs Nagy wrote:
> On 25/07/2019 01:03, Tulio Magno Quites Machado Filho wrote:
>> Commit 35e038c1d2ccb3a75395662f9c4f28d85a61444f started to use an
>> incomplete list of subdirs based on $(all-subdirs) causing
>> testroot.pristine to miss files from nss.
>>
>> Tested if the list of files in testroot.pristine remains the same.
>
> fwiw with this patch aarch64 buildbot would go back to green.

This is good enough confirmation for me.

Please install the fix so we can get clean builds for the release.

>>
>> 2019-07-24  Tulio Magno Quites Machado Filho  <[hidden email]>
>>
>> [BZ #24794]
>> * Makeconfig (all-subdirs): Improved source comments.
>> * Makefile (testroot.pristine/install.stamp): Pass
>> subdirs='$(sorted-subdirs)' to make install.
>> ---
>>   Makeconfig | 6 +++---
>>   Makefile   | 2 +-
>>   2 files changed, 4 insertions(+), 4 deletions(-)
>>
>> diff --git a/Makeconfig b/Makeconfig
>> index 0e386fbc19..fd36c58c04 100644
>> --- a/Makeconfig
>> +++ b/Makeconfig
>> @@ -1267,9 +1267,9 @@ else
>>   libsupport = $(common-objpfx)support/libsupport.a
>>   endif
>>  
>> -# These are the subdirectories containing the library source.  The order
>> -# is more or less arbitrary.  The sorting step will take care of the
>> -# dependencies.
>> +# This is a partial list of subdirectories containing the library source.
>> +# The order is more or less arbitrary.  The sorting step will take care of the
>> +# dependencies and generate sorted-subdirs dynamically.
>>   all-subdirs = csu assert ctype locale intl catgets math setjmp signal    \
>>        stdlib stdio-common libio malloc string wcsmbs time dirent    \
>>        grp pwd posix io termios resource misc socket sysvipc gmon    \
>> diff --git a/Makefile b/Makefile
>> index 9fbf705200..ac1125853b 100644
>> --- a/Makefile
>> +++ b/Makefile
>> @@ -402,7 +402,7 @@ ifeq ($(run-built-tests),yes)
>>    done
>>   endif
>>   $(MAKE) install DESTDIR=$(objpfx)testroot.pristine \
>> -  subdirs='$(all-subdirs)'
>> +  subdirs='$(sorted-subdirs)'
>>   touch $(objpfx)testroot.pristine/install.stamp
>>  
>>   tests-special-notdir = $(patsubst $(objpfx)%, %, $(tests-special))
>>
>


--
Cheers,
Carlos.
Reply | Threaded
Open this post in threaded view
|

Re: [PATCH] test-container: Install with $(sorted-subdirs) [BZ #24794]

Stefan Liebler-2
In reply to this post by Tulio Magno Quites Machado Filho-2
Hi Tulio,

with this patch, testroot.pristine contains the missing getent / makedb
executables and libnss_* libraries.
Now nss/tst-nss-files-hosts-long and all other container tests are passing.

Thanks,
Stefan

On 7/25/19 2:03 AM, Tulio Magno Quites Machado Filho wrote:

> Commit 35e038c1d2ccb3a75395662f9c4f28d85a61444f started to use an
> incomplete list of subdirs based on $(all-subdirs) causing
> testroot.pristine to miss files from nss.
>
> Tested if the list of files in testroot.pristine remains the same.
>
> 2019-07-24  Tulio Magno Quites Machado Filho  <[hidden email]>
>
> [BZ #24794]
> * Makeconfig (all-subdirs): Improved source comments.
> * Makefile (testroot.pristine/install.stamp): Pass
> subdirs='$(sorted-subdirs)' to make install.
> ---
>   Makeconfig | 6 +++---
>   Makefile   | 2 +-
>   2 files changed, 4 insertions(+), 4 deletions(-)
>
> diff --git a/Makeconfig b/Makeconfig
> index 0e386fbc19..fd36c58c04 100644
> --- a/Makeconfig
> +++ b/Makeconfig
> @@ -1267,9 +1267,9 @@ else
>   libsupport = $(common-objpfx)support/libsupport.a
>   endif
>  
> -# These are the subdirectories containing the library source.  The order
> -# is more or less arbitrary.  The sorting step will take care of the
> -# dependencies.
> +# This is a partial list of subdirectories containing the library source.
> +# The order is more or less arbitrary.  The sorting step will take care of the
> +# dependencies and generate sorted-subdirs dynamically.
>   all-subdirs = csu assert ctype locale intl catgets math setjmp signal    \
>        stdlib stdio-common libio malloc string wcsmbs time dirent    \
>        grp pwd posix io termios resource misc socket sysvipc gmon    \
> diff --git a/Makefile b/Makefile
> index 9fbf705200..ac1125853b 100644
> --- a/Makefile
> +++ b/Makefile
> @@ -402,7 +402,7 @@ ifeq ($(run-built-tests),yes)
>    done
>   endif
>   $(MAKE) install DESTDIR=$(objpfx)testroot.pristine \
> -  subdirs='$(all-subdirs)'
> +  subdirs='$(sorted-subdirs)'
>   touch $(objpfx)testroot.pristine/install.stamp
>  
>   tests-special-notdir = $(patsubst $(objpfx)%, %, $(tests-special))
>

Reply | Threaded
Open this post in threaded view
|

Re: [PATCH] test-container: Install with $(sorted-subdirs) [BZ #24794]

Tulio Magno Quites Machado Filho-2
In reply to this post by Carlos O'Donell-6
Carlos O'Donell <[hidden email]> writes:

> On 7/25/19 8:46 AM, Szabolcs Nagy wrote:
>> On 25/07/2019 01:03, Tulio Magno Quites Machado Filho wrote:
>>> Commit 35e038c1d2ccb3a75395662f9c4f28d85a61444f started to use an
>>> incomplete list of subdirs based on $(all-subdirs) causing
>>> testroot.pristine to miss files from nss.
>>>
>>> Tested if the list of files in testroot.pristine remains the same.
>>
>> fwiw with this patch aarch64 buildbot would go back to green.
>
> This is good enough confirmation for me.
>
> Please install the fix so we can get clean builds for the release.

I've just pushed it to master.

DJ,
I took the freedom to add your name to the ChangeLog file too as you proposed
the same fix.  ;-)

Pushed as 354e4c1adddb1.

--
Tulio Magno
12