[Starlingx-discuss] [CentOS8] build-pkgs/build-iso completed successfully, but installer reports dependency issues

Bai, Haiqing Haiqing.Bai at windriver.com
Wed Dec 9 02:32:54 UTC 2020


You are right, this is caused by the dnf modularity.  For just test purpose, do you know whether can adding "#!/bin/sh echo module_hotfixes=true >> '/etc/dnf/dnf.conf'" in the "%pre" section of kickstart cfg,
I tried but failed to update "/etc/dnf/dnf.conf" on target.

Actually the below commit[0] making the normal repodata to module repo with the upstream "modules.yaml":
http://mirror.centos.org/centos/8.1.1911/AppStream/x86_64/os/repodata/1feb2b0b68761a17ebdf1084518e3f53cec4ec5f317dc1dc7c780a2b041ec3b6-modules.yaml.gz
this gz file has been deprecated ,  after updated the above one with the modules.yaml in https://vault.centos.org/8.1.1911/AppStream/x86_64/os/repodata/,
the pyton36/python36-devel excluding issue gone,  but the same issues for qemu-kvm-ev.   I think this can be explained for that "qemu-kvm-ev" is not from vault AppStream, but built locally.  This means
we have to create module repo for these packages built locally.  I found below tools set that can do this:

https://github.com/rpm-software-management/modulemd-tools
These tools requires that the "libmodulemd" must be upgraded to 2.0 which will cause python "__common_types" issue.  I am still working on this.


[0] ===================================================
commit 3139368079e66aba19dab4e4ed58665df5f55ca1 (HEAD)
Author: Yong Fu <fuyong at neusoft.com>
Date:   Wed Jul 8 11:29:04 2020 +0800

    CentOS 8: Add modular repository to fix ISO installation problems.

    In the centos8.1 environment,
    "dnf: No available modular metadata for modular package"
    error occurs in ISO installation.

    Modular repository must contain the modular metadata (modulemd) in
    the repodata. Excluding the metadata will cause all the modular packages
    to become standalone packages which could have negative consequences.

    'modules.yaml' get from
    http://mirror.centos.org/centos/8.1.1911/AppStream/x86_64/os/repodata/1feb2b0b68761a17ebdf1084518e3f53cec4ec5f317dc1dc7c780a2b041ec3b6-modules.yaml.gz

    Change-Id: I92a7f1a3c74197d7a9cec1fb5f0cc5fa5e961900
    Story: 2006729
    Task: 40294
    Signed-off-by: Yong Fu <fuyong at neusoft.com>

diff --git a/build-tools/build-iso b/build-tools/build-iso
index b9ad63d..4e8d962 100755
--- a/build-tools/build-iso
+++ b/build-tools/build-iso
@@ -458,7 +458,8 @@ function final_touches {
    # create the repo
    \cd $OUTPUT_DIST_DIR/isolinux
    $CREATEREPO -q -g ../comps.xml .
-
+   # add modulemd
+   modifyrepo_c --mdtype=modules $MY_REPO/build-tools/modularity/modules.yaml ./repodata
    # build the ISO
    printf "Building image $OUTPUT_FILE\n"
    \cd $OUTPUT_DIST_DIR
diff --git a/build-tools/modularity/modules.yaml b/build-tools/modularity/modules.yaml
=============================================

From: Penney, Don <Don.Penney at windriver.com>
Sent: Monday, December 7, 2020 5:27 PM
To: Bai, Haiqing <Haiqing.Bai at windriver.com>; starlingx-discuss at lists.starlingx.io
Subject: RE: [CentOS8] build-pkgs/build-iso completed successfully, but installer reports dependency issues

It sounds like this new RHEL8 feature, modularity:
https://dnf.readthedocs.io/en/latest/modularity.html#hotfix-repositories

It looks like it could be disabled with module_hotfixes=true in the repo config file, but I don't see any way of passing this to the kickstart repo command.

I expect there will need to be some investigation of the differences in the installation of centos8 vs centos7, maybe look at the stock installation media to look at how the software repositories are setup. The introduction of modularity and "AppStream" could necessitate some changes in how we setup our ISO and software repositories.


From: Bai, Haiqing <Haiqing.Bai at windriver.com<mailto:Haiqing.Bai at windriver.com>>
Sent: Monday, December 7, 2020 3:45 AM
To: starlingx-discuss at lists.starlingx.io<mailto:starlingx-discuss at lists.starlingx.io>
Subject: [Starlingx-discuss] [CentOS8] build-pkgs/build-iso completed successfully, but installer reports dependency issues

Hi,  all:

         Is there anyone knows why "build-pkgs" and "build-iso" completed successfully and bootimage.iso created,  but the target installer has below errors:
(I have checked that "python36" and "python36-devel" are in dist/comps.xml  and the type is "mandatory" of group ID "platform-controller", "platform-controller-worker", "platform-controller-worker-lowlatency",
and the kickstarts cfg files include the related group in "%packages" ).    Thanks.

========================================
Error

The following software marked for installation has errors.  This is likely
caused by an error with
your installation source.

Problem 1: package patch-alarm-1.0-2.tis.x86_64 requires python3-devel, but
none of the providers can be installed
  - conflicting requests
  - package python36-devel-3.6.8-2.module_el8.1.0+245+c39af44f.x86_64 is
excluded
Problem 2: package grubby-8.40-34.el8.tis.1.x86_64 requires python3-devel, but
none of the providers can be installed
  - conflicting requests
  - package python36-devel-3.6.8-2.module_el8.1.0+245+c39af44f.x86_64 is
excluded
Problem 3: package cgcs-patch-1.0-28.tis.x86_64 requires python3-devel, but
none of the providers can be installed
  - conflicting requests
  - package python36-devel-3.6.8-2.module_el8.1.0+245+c39af44f.x86_64 is
excluded
Problem 4: package worker-utils-1.0-5.tis.x86_64 requires /usr/bin/python3, but
none of the providers can be installed
  - package worker-utils-1.0-5.tis.x86_64 requires python3, but none of the
providers can be installed
  - conflicting requests
  - package python36-3.6.8-2.module_el8.1.0+245+c39af44f.x86_64 is excluded

Press ENTER to continue:
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.starlingx.io/pipermail/starlingx-discuss/attachments/20201209/5b36a018/attachment-0001.html>


More information about the Starlingx-discuss mailing list