public inbox for development@lists.ipfire.org
 help / color / mirror / Atom feed
From: Adolf Belka <adolf.belka@ipfire.org>
To: development@lists.ipfire.org
Subject: Re: Feedback on pakfire-3 testing
Date: Fri, 10 Jan 2025 15:59:22 +0100	[thread overview]
Message-ID: <3490b1aa-f7dd-44f2-b748-3b2808176eca@ipfire.org> (raw)
In-Reply-To: <8afa9a01-cfdd-4ad2-8a27-8d42e8551814@ipfire.org>

[-- Attachment #1: Type: text/plain, Size: 11329 bytes --]

Hi Michael,

On 10/01/2025 15:35, Adolf Belka wrote:
> Hi Michael,
>
> On 10/01/2025 15:00, Michael Tremer wrote:
>> Hello Adolf,
>>
>> Thank you for giving this a test.
>>
>>> On 10 Jan 2025, at 13:51, Adolf Belka <adolf.belka(a)ipfire.org> wrote:
>>>
>>> Hi Michael,
>>>
>>> I did a fresh git clone of the pakfire repo and built it.
>>>
>>> Then ran builds of beep, libxcrypt and openssl. All completed successfully.
>>
>> That is good news.
>>
>>> beep took 15 secs, libxcrypt 50 secs and openssl 13 mins.
>>
>> Cool. This sounds about right. The first build should have created a snapshot may so that running the second would have started much faster?
>>
>>> In the autogen.sh part of the pakfire build I did see a couple of warnings but it didn't stop the pakfire build from completing successfully.
>>>
>>>
>>> You should update your 'aclocal.m4' by running aclocal.
>>> configure.ac:191: warning: AC_PROG_LEX without either yywrap or noyywrap is obsolete
>>>
>>> parallel-tests: installing 'build-aux/test-driver'
>>> Makefile.am:1175: warning: variable 'TESTSUITE_LDFLAGS' is defined but no program or
>>> Makefile.am:1175: library has 'TESTSUITE' as canonical name (possible typo)
>>
>> Yes, the first one I have no idea how to get rid of, the second is probably just renaming the variable.
>>
>>> 8 from 30 tests in the make check section failed.
>>
>> That is not right. Could you check the *.log files of the individual ones and see what is going wrong?
>
> Here is the fail message for each of the 8 - does make check need to be run as root? I haven't been, only the make install.
>
> main
> pakfire: pakfire_create: Could not mount tmpfs: Operation not permitted
> pakfire: pakfire_free: Destroying
> TESTS: ERROR: Failed assertion: pakfire_create(&pakfire, t->ctx, NULL, NULL, NULL, 0) == -EINVAL tests/libpakfire/main.c:41 test_fail
>
> build
> pakfire: pakfire_create: Could not mount tmpfs: Operation not permitted
> pakfire: pakfire_free: Destroying
> TESTS: ERROR: Failed assertion: pakfire_build_create(&build, t->ctx, t->config, NULL, NULL, 0) (r = -1 - Operation not permitted, errno = Operation not permitted) at tests/libpakfire/build.c:31 test_create_and_free
>
> cgroup
> pakfire: pakfire_cgroup_open: Created cgroup (root)
> pakfire: __pakfire_cgroup_open: Could not create cgroup 'pakfire-test': Permission denied
> TESTS: ERROR: Failed assertion: pakfire_cgroup_create(&cgroup, t->ctx, NULL, "pakfire-test", 0) (r = -13 - Permission denied, errno = Permission denied) at tests/libpakfire/cgroup.c:34 test_create_and_destroy
>
> jail
> pakfire: pakfire_jail_setup_uid_mapping: Could not map UIDs: Invalid argument
> TESTS: ERROR: Failed assertion: pakfire_jail_exec_command(jail, argv, NULL, 0) == 123 tests/libpakfire/jail.c:71 test_exit_code
> pakfire: pakfire_jail_free: Freeing jail at 0x590fa3a18c50
>
> makefile
> pakfire: pakfire_parser_create_package: Building package from namespace '(null)'
> pakfire: pakfire_parser_create_package: EVR is empty
> pakfire: pakfire_parser_create_package: Could not create package: No such file or directory
> TESTS: ERROR: Failed assertion: r == 0 tests/libpakfire/makefile.c:140 test_packages
>
> os
> TESTS: running test_distro
> TESTS: ERROR: Failed assertion: *distro.version || *distro.version_id tests/libpakfire/os.c:109 test_distro
>
> util
> pakfire: pakfire_create:     vendor     = Test Project
> pakfire: pakfire_create:     slogan     = Always code as if the guy who ends up maintaining your code will be a violent psychopath who knows where you live
> pakfire: pakfire_rlimit_set: RLIMIT_NOFILE set to 524288
> TESTS: ERROR: Failed assertion: pakfire_mkparentdir("/test/1/file.txt", 0755) (r = -1 - Operation not permitted, errno = Permission denied) at tests/libpakfire/util.c:43 test_mkdir
>
> package.py
> DEBUG:pakfire:    vendor     = Test Project
> DEBUG:pakfire:    slogan     = Always code as if the guy who ends up maintaining your code will be a violent psychopath who knows where you live
> DEBUG:pakfire:RLIMIT_NOFILE set to 524288
> F
> ======================================================================
> FAIL: test_open (__main__.PackageTest.test_open)
> ----------------------------------------------------------------------
> Traceback (most recent call last):
>   File "/home/source/pakfire/./tests/python/package.py", line 39, in test_open
>     self.assertEqual(p.groups, "Applications/System")
>     ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
> AssertionError: [] != 'Applications/System'
>
> ----------------------------------------------------------------------
> Ran 1 test in 0.003s
>
>>
>>> In the package build stage for all three packages that I tested I got the following:-
>>>
>>> sudo pakfire-builder build beep/beep.nm
>>>   Scanning local 00:00 60/60
>>> Could not retrieve uname for 1000: No such file or directory
>>> Could not retrieve gname for 1000: No such file or directory
>>> Could not retrieve uname for 1000: No such file or directory
>>> Could not retrieve gname for 1000: No such file or directory
>>> Could not retrieve uname for 1000: No such file or directory
>>> Could not retrieve gname for 1000: No such file or directory
>>
>> Hmm, this is not right… As the files checked out by another user with ID 1000?
>
> I forgot to mention. uid and gid 1000 is my user that is logged in running the pakfire-builder process. It is just my normal user, nothing special.
>
>>
>>>   beep-1.4.12.tar.gz 87k     87kB/s 00:01   0%
>>>   beep-1.4.12-1.ipfire3.src 88k      0B/s 100%
>>> Building beep-1.4.12-1.ipfire3.src (eed8a645-191c-46d4-91a5-dfc82aec9829)...
>>>
>>>
>>>   python3-gobject3-3.46.0-1.ipfire3.x86_64 100%
>>> #  This file is part of systemd.
>>> #
>>> #  systemd is free software; you can redistribute it and/or modify it
>>> #  under the terms of the GNU Lesser General Public License as published by
>>> #  the Free Software Foundation; either version 2.1 of the License, or
>>> #  (at your option) any later version.
>>>
>>> # The superuser
>>> g root    0       -            -
>>> u root    0:0     "Super User" /root
>>>
>>> # The nobody user/group for NFS file systems
>>> g nobody 65534       -            -
>>> u nobody 65534:65534 "Kernel Overflow User"     -
>>>
>>> # Administrator group: can *see* more than normal users
>>> g adm     4     -            -
>>>
>>> # Administrator group: can *do* more than normal users
>>> g wheel   10     -            -
>>>
>>> # Access to shared database of users on the system
>>> g utmp    22     -            -
>>>
>>> # Physical and virtual hardware access groups
>>> g audio   63     -            -
>>> g cdrom   11     -            -
>>> g dialout 18     -            -
>>> g disk    6     -            -
>>> g input   104     -            -
>>> g kmem    9     -            -
>>> g kvm     36     -            -
>>> g lp      7     -            -
>>> g render  105     -            -
>>> g sgx     106     -            -
>>> g tape    33     -            -
>>> g tty     5     -            -
>>> g video   39     -            -
>>>
>>> # Default group for normal users
>>> g users   100     -            -
>>> #  This file is part of systemd.
>>> #
>>> #  systemd is free software; you can redistribute it and/or modify it
>>> #  under the terms of the GNU Lesser General Public License as published by
>>> #  the Free Software Foundation; either version 2.1 of the License, or
>>> #  (at your option) any later version.
>>>
>>> u systemd-coredump - "systemd Core Dumper"
>>> #  This file is part of systemd.
>>> #
>>> #  systemd is free software; you can redistribute it and/or modify it
>>> #  under the terms of the GNU Lesser General Public License as published by
>>> #  the Free Software Foundation; either version 2.1 of the License, or
>>> #  (at your option) any later version.
>>>
>>> g systemd-journal 190 -
>>> #  This file is part of systemd.
>>> #
>>> #  systemd is free software; you can redistribute it and/or modify it
>>> #  under the terms of the GNU Lesser General Public License as published by
>>> #  the Free Software Foundation; either version 2.1 of the License, or
>>> #  (at your option) any later version.
>>>
>>> u systemd-oom - "systemd Userspace OOM Killer"
>>
>> This is from a systemd feature that currently seems to be very broken, I will put this on my TODO list.
>>
>>>   systemd-254-3.ipfire3.x86_64 100%
>>> *** buffer overflow detected ***: terminated
>>
>> This is also a problem inside the build environment and I believe rebuilding systemd fixes it.
>>
I rebuilt systemd and now I don't see any of these messages for any builds I am doing now.

Regards,

Adolf.

>>> The child process terminated abnormally with status code 11
>>>   dbus-broker-32-1.ipfire3.x86_64 100%
>>>   uuidd-2.39.2-3.ipfire3.x86_64 100%
>>>   setup-3.0-19.ipfire3.noarch 100%
>>> *** buffer overflow detected ***: terminated
>>> The child process terminated abnormally with status code 11
>>>   sudo-1.9.14p3-2.ipfire3.x86_64 100%
>>> *** buffer overflow detected ***: terminated
>>> The child process terminated abnormally with status code 11
>>>   bash-completion-2.11-1.ipfire3.noarch 100%
>>>   filesystem-002-5.ipfire3.x86_64 0%
>>>   groff-1.22.4-1.ipfire3.x86_64 100%
>>>   openssh-9.4p1-1.ipfire3.x86_64 100%
>>>   smartmontools-7.4-1.ipfire3.x86_64 100%
>>>   mc-4.8.29-3.ipfire3.x86_64 100%
>>>   libtool-2.4.7-2.ipfire3.x86_64 100%
>>>   gettext-0.21.1-5.1.ipfire3.x86_64 100%
>>>   gettext-libs-0.21.1-5.1.ipfire3.x86_64 100%
>>>   findutils-4.9.0-1.ipfire3.x86_64 100%
>>>   gcc-12.3.0-1.ipfire3.x86_64 100%
>>>   gcc-c++-12.3.0-1.ipfire3.x86_64 100%
>>>   cpp-12.3.0-1.ipfire3.x86_64 100%
>>>   man-db-2.11.2-1.ipfire3.x86_64 100%
>>> *** buffer overflow detected ***: terminated
>>> The child process terminated abnormally with status code 11
>>>   ipfire-release-build-3.0-alpha2-10.ipfire3.noarch 0%
>>>   pakfire-0.9.29-1.ipfire3.x86_64 100%
>>>   ipfire-release-3.0-alpha2-10.ipfire3.noarch 100%
>>> *** buffer overflow detected ***: terminated
>>> The child process terminated abnormally with status code 11
>>> Running in chroot, ignoring command 'start'
>>> Running build stage 'prepare'
>>>
>>> I recall you saying that running a repeat of the build should result in a quicker build. I have not found that. It has stayed very similar in time in all three cases.
>>
>> Can you run “pakfire-build snapshot update” and see if that creates the snapshot? Maybe I didn’t fully think this through when it is being created.
>
> That made the improvement. Now beep built in 2 seconds and libxcrypt in 35 seconds.
>
> Regards,
> Adolf.
>>
>> -Michael
>>
>>>
>>> Regards,
>>>
>>> Adolf.
>>>
>>
>

  reply	other threads:[~2025-01-10 14:59 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-01-10 13:51 Adolf Belka
2025-01-10 14:00 ` Michael Tremer
2025-01-10 14:35   ` Adolf Belka
2025-01-10 14:59     ` Adolf Belka [this message]
2025-01-10 15:18     ` Michael Tremer

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=3490b1aa-f7dd-44f2-b748-3b2808176eca@ipfire.org \
    --to=adolf.belka@ipfire.org \
    --cc=development@lists.ipfire.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox