Re: the sad state of installability tests

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, Jul 15, 2024 at 01:26:09PM +0200, Petr Pisar wrote:
> V Mon, Jul 15, 2024 at 08:45:53AM +0000, Zbigniew Jędrzejewski-Szmek napsal(a):
> > On Mon, Jul 15, 2024 at 10:31:06AM +0200, Petr Pisar wrote:
> > > I guess the test does not take RPM Conflicts into account. It's overly
> > > optimistic when populating a system by installing all tested packages together
> > > instead of creating a new system for each test seperately. Or by adding
> > > --allowerasing to "dnf install" invocations if the CI wants to reuse
> > > the system.
> > 
> > Yes and no. The test does not look at the package metadata at all, it just
> > tries to install all the packages that were part of the update.
> > In the case above, coreutils.srpm builds coreutils.rpm and coreutils-single.srpm,
> > which have Conflicts on one another, and cannot be installed at the same time.
> > 
> > The test which (I think) we really want is to install the combined set
> > of packages from the update, so we exercise the situation that will occur
> > on end-user systems, but exclude the packages from this set which are known
> > to be not co-installable.
> >
> Maybe I conflate installability tests with rpmdeplint tests. We need both:
> A test which checks that each package is separately installable. And a test
> which tcgecks that wanted combinations of packages can be installed together.
> 
> I cannot see how "exclude the packages from this set which are known
> to be not co-installable" can be achieved automatically. Either the test will
> examine package metadata for Conflicts to exclude the conflicting packages, or
> someone will have to maintain the good set of combinanations.

Yes, I think those sets would need to be declared. The natural place
for this declaration would be in dist-git of the package.

For example for systemd:
ci.ini:
  [InstallationGroups]
  group = *-standalone-*
  group = ~*-standalone-*

For fedora-release:
ci.ini:
  [InstallationGroups]
  group = fedora-release-common fedora-release*-basic
  group = fedora-release-common fedora-release*-budgie
  group = fedora-release-common fedora-release*-budgie-atomic
  group = fedora-release-common fedora-release*-cinnamon
  group = fedora-release-common fedora-release*-cloud
  group = fedora-release-common fedora-release*-compneuro
  group = fedora-release-common fedora-release*-container
  group = fedora-release-common fedora-release*-coreos
  group = fedora-release-common fedora-release*-designsuite
  group = fedora-release-common fedora-release*-i3
  group = fedora-release-common fedora-release*-iot
  group = fedora-release-common fedora-release*-kde
  group = fedora-release-common fedora-release*-kinoite
  group = fedora-release-common fedora-release*-lxqt
  group = fedora-release-common fedora-release*-matecompiz
  group = fedora-release-common fedora-release*-mobility
  group = fedora-release-common fedora-release*-server
  group = fedora-release-common fedora-release*-silverblue
  group = fedora-release-common fedora-release*-snappy
  group = fedora-release-common fedora-release*-soas
  group = fedora-release-common fedora-release*-sway
  group = fedora-release-common fedora-release*-sway
  group = fedora-release-common fedora-release*-toolbx
  group = fedora-release-common fedora-release*-workstation
  group = fedora-release-common fedora-release*-xfce

(I don't really care about the syntax. Just something that is easy to
write and understand. And that the syntax is extensible to allow us to
configure some other stuff in the future.)

Zbyszek
-- 
_______________________________________________
devel mailing list -- devel@xxxxxxxxxxxxxxxxxxxxxxx
To unsubscribe send an email to devel-leave@xxxxxxxxxxxxxxxxxxxxxxx
Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: https://lists.fedoraproject.org/archives/list/devel@xxxxxxxxxxxxxxxxxxxxxxx
Do not reply to spam, report it: https://pagure.io/fedora-infrastructure/new_issue




[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Fedora Announce]     [Fedora Users]     [Fedora Kernel]     [Fedora Testing]     [Fedora Formulas]     [Fedora PHP Devel]     [Kernel Development]     [Fedora Legacy]     [Fedora Maintainers]     [Fedora Desktop]     [PAM]     [Red Hat Development]     [Gimp]     [Yosemite News]

  Powered by Linux