simp / simp-core

The base SIMP build repository
Other
115 stars 43 forks source link

The `389-ds` packages are not available during the puppet run from a freshly installed ISO #860

Closed trevor-vaughan closed 1 year ago

trevor-vaughan commented 1 year ago
Error: Could not update: Execution of '/usr/bin/dnf -d 0 -e 1 -y install 389-ds-base' returned 1: Error: Unable to find a match: 389-ds-base
Error: /Stage[main]/Ds389::Install/Package[389-ds-base]/ensure: change from 'purged' to 'latest' failed: Could not update: Execution of '/usr/bin/dnf -d 0 -e 1 -y install 389-ds-base' returned 1: Error: Unable to find a match: 389-ds-base                                                                                                                                             
Error: Could not update: Execution of '/usr/bin/dnf -d 0 -e 1 -y install 389-ds-base-legacy-tools' returned 1: Error: Unable to find a match: 389-ds-base-legacy-tools                                                                                                                                                                                                                     
Error: /Stage[main]/Ds389::Install/Package[389-ds-base-legacy-tools]/ensure: change from 'purged' to 'latest' failed: Could not update: Execution of '/usr/bin/dnf -d 0 -e 1 -y install 389-ds-base-legacy-tools' returned 1: Error: Unable to find a match: 389-ds-base-legacy-tools                                                                                                      
Error: Could not find group dirsrv
Info: Unknown failure using insync_values? on type: File[/usr/share/puppet_ds389_config] / property: group to compare values ["dirsrv"] and 0                                                                                                                                                                                                                                              
Error: /Stage[main]/Ds389/File[/usr/share/puppet_ds389_config]/group: change from 'root' to 'dirsrv' failed: Could not find group dirsrv

Continues on with cascading failures from there.

Tried:

Output of dnf module list

[root@puppet yum.repos.d]# dnf module list
Last metadata expiration check: 0:03:20 ago on Fri 11 Nov 2022 08:45:17 PM UTC.
AppStream
Name                                    Stream                       Profiles                                   Summary
389-ds                                  1.4 [e]                                                                 389 Directory Server (base)
freeradius                              3.0                          server                                     High-performance and highly configurable free RADIUS server
httpd                                   2.4 [e]                      common, devel, minimal                     Apache HTTP Server
javapackages-runtime                    201801 [e]                   common                                     Basic runtime utilities to support Java applications
llvm-toolset                            rhel8                        common                                     LLVM
mariadb                                 10.3 [e]                     client, galera, server                     MariaDB Module
mysql                                   8.0 [e]                      client, server                             MySQL Module
perl                                    5.26 [e]                     common, minimal                            Practical Extraction and Report Language
perl-DBD-MySQL                          4.046                        common                                     A MySQL interface for Perl
perl-DBI                                1.641                        common                                     A database access API for Perl
perl-IO-Socket-SSL                      2.066 [e]                    common                                     Perl library for transparent TLS
perl-libwww-perl                        6.34 [e]                     common                                     A Perl interface to the World-Wide Web
python36                                3.6 [e]                      build, common                              Python programming language, version 3.6
ruby                                    2.7 [e]                      common                                     An interpreter of object-oriented scripting language

PowerTools
Name                                    Stream                       Profiles                                   Summary
mariadb-devel                           10.3                                                                    MariaDB Module

epel-modular
Name                                    Stream                       Profiles                                   Summary
389-directory-server                    stable                       default, legacy, minimal                   389 Directory Server
trevor-vaughan commented 1 year ago

@op-ct I'm 99% sure that the issue is that the epel-modular material is overriding the AppStream material (I think).

trevor-vaughan commented 1 year ago

In a clean installation, when I enable 389-directory-server then 389-ds-base installs but the other necessary RPMs are missing. When I run the spec test, everything works properly pointing at AppStream.

It doesn't seem like pulp is grabbing the AppStream 389 material.

trevor-vaughan commented 1 year ago

Tried using bolt-pulp3 to only include the epel-modular and AppStream modules but the system hung on Pulp3RpmRepoSlimmer: pagination: 0, total considered: 0/0

trevor-vaughan commented 1 year ago

Not quite sure yet, but it seems like the repo href being called in the slim-pulp-repo-copy.rb is not correct for some reason.

The reference is generated in slim_repos_data_for().

trevor-vaughan commented 1 year ago

Digging further:

trevor-vaughan commented 1 year ago

Looks like it may have been an issue with not handling an edge case where there were too few packages to page. However, it's still not downloading the 389DS RPMs

trevor-vaughan commented 1 year ago

Confirmed the edge case, fix incoming