Foreman 1.21 upgrade dependency failures


#1

Hi Everyone,

I am trying to upgrade from 1.20.2 to 1.21.0-1 but yum keeps failing with dependency errors. I attempted this with Katello 3.9 but have since upgraded to Katello-3.10 but th esame problem keeps occurring.

Error:

--> Processing Dependency: foreman-webpack-vendor-js(8f1a560ed7b654fe8dba) for package: tfm-rubygem-katello-3.10.0-1.el7.noarch
---> Package tfm-rubygem-xmlrpc.noarch 0:0.3.0-1.el7 will be installed
--> Finished Dependency Resolution
Error: Package: tfm-rubygem-katello-3.10.0-1.el7.noarch (@katello)
           Requires: foreman-webpack-vendor-js(8f1a560ed7b654fe8dba)
           Removing: foreman-1.20.2-1.el7.noarch (@foreman)
               foreman-webpack-vendor-js(8f1a560ed7b654fe8dba)
           Updated By: foreman-1.21.0-1.el7.noarch (foreman)
               Not found

rubygem-katello-3.10.0-1.el7.noarch was installed as part of the Katello upgrade and has a dependancy for foreman-webpack-vendor-js(8f1a560ed7b654fe8dba):

[root@foreman ~]# rpm -qRi tfm-rubygem-katello-3.10.0-1.el7.noarch
/bin/bash
foreman >= 1.18.0
foreman-postgresql
**foreman-webpack-vendor-js(8f1a560ed7b654fe8dba)**
katello-selinux
rh-ruby25-ruby
rh-ruby25-ruby(release)
rh-ruby25-ruby(rubygems)
rh-ruby25-rubygem(json)
rpmlib(CompressedFileNames) <= 3.0.4-1
rpmlib(FileDigests) <= 4.6.0-1
rpmlib(PayloadFilesHavePrefix) <= 4.0-1
tfm-ror52-rubygem(rails)
tfm-rubygem(anemone)
tfm-rubygem(apipie-rails) >= 0.5.4
tfm-rubygem(bastion) >= 6.1.13
tfm-rubygem(bastion) < 7.0.0
tfm-rubygem(deface) >= 1.0.2
tfm-rubygem(deface) < 2.0.0
tfm-rubygem(foreman-tasks) >= 0.12
tfm-rubygem(foreman-tasks) < 1
tfm-rubygem(foreman_docker) >= 0.2.0
tfm-rubygem(gettext_i18n_rails)
tfm-rubygem(oauth)
tfm-rubygem(qpid_messaging)
tfm-rubygem(rabl)
tfm-rubygem(rest-client)
tfm-rubygem(runcible) >= 2.6.0
tfm-rubygem(runcible) < 3.0.0
tfm-runtime
rpmlib(PayloadIsXz) <= 5.2-1
Name        : tfm-rubygem-katello
Version     : 3.10.0
Release     : 1.el7
Architecture: noarch
Install Date: Tue 12 Mar 2019 14:35:31 AEDT
Group       : Applications/Systems
Size        : 94819396
License     : GPLv2
Signature   : RSA/SHA1, Tue 18 Dec 2018 01:34:48 AEDT, Key ID efaff7f888287c2b
Source RPM  : tfm-rubygem-katello-3.10.0-1.el7.src.rpm
Build Date  : Mon 17 Dec 2018 23:32:02 AEDT
Build Host  : koji.katello.org
Relocations : (not relocatable)
Packager    : Koji
Vendor      : Koji
URL         : https://theforeman.org/plugins/katello
Summary     : Content and Subscription Management plugin for Foreman
Description :
Content and Subscription Management plugin for Foreman.
[root@inf-lnxfrmn-01 ~]#

foreman-webpack-vendor-js is NOT currently installed:

> [root@foreman ~]# rpm -qa | grep foreman-webpack-vendor-js
> [root@foreman ~]#

Following the upgrade procedure from the docs to the letter. Not sure how to proceed without “foreman-webpack-vendor-js(8f1a560ed7b654fe8dba”…

Thanks, have a great day!

Les


#2

Current Foreman/Katello package list:

foreman-1.20.2-1.el7.noarch
foreman-cli-1.20.2-1.el7.noarch
foreman-compute-1.20.2-1.el7.noarch
foreman-debug-1.20.2-1.el7.noarch
foreman-installer-1.20.2-1.el7.noarch
foreman-installer-katello-3.10.0-1.el7.noarch
foreman-postgresql-1.20.2-1.el7.noarch
foreman-proxy-1.20.2-1.el7.noarch
foreman-release-1.21.0-1.el7.noarch
foreman-release-scl-7-2.el7.noarch
foreman-selinux-1.20.2-1.el7.noarch
foreman-vmware-1.20.2-1.el7.noarch
-foreman-client-1.0-1.noarch
-foreman-proxy-1.0-1.noarch
-foreman-proxy-client-1.0-1.noarch
katello-3.10.0-7.el7.noarch
katello-certs-tools-2.4.0-1.el7.noarch
katello-client-bootstrap-1.6.0-1.el7.noarch
katello-common-3.10.0-7.el7.noarch
katello-debug-3.10.0-7.el7.noarch
katello-default-ca-1.0-1.noarch
katello-installer-base-3.10.0-1.el7.noarch
katello-repos-3.10.0-2.el7.noarch
katello-selinux-3.0.3-1.el7.noarch
katello-server-ca-1.0-1.noarch
katello-service-3.10.0-7.el7.noarch
pulp-katello-1.0.2-1.el7.noarch
rubygem-foreman_maintain-0.3.0-1.el7.noarch
tfm-rubygem-foreman_dhcp_browser-0.0.8-3.fm1_20.el7.noarch
tfm-rubygem-foreman_dhcp_browser-doc-0.0.8-3.fm1_20.el7.noarch
tfm-rubygem-foreman_docker-4.1.0-2.fm1_20.el7.noarch
tfm-rubygem-foreman_expire_hosts-5.1.0-4.fm1_20.el7.noarch
tfm-rubygem-foreman-tasks-0.14.3-1.fm1_20.el7.noarch
tfm-rubygem-foreman-tasks-core-0.2.5-2.fm1_20.el7.noarch
tfm-rubygem-foreman_virt_who_configure-0.3.0-1.fm1_20.el7.noarch
tfm-rubygem-hammer_cli_foreman-0.15.1-1.el7.noarch
tfm-rubygem-hammer_cli_foreman_admin-0.0.8-2.el7.noarch
tfm-rubygem-hammer_cli_foreman_bootdisk-0.1.3-7.el7.noarch
tfm-rubygem-hammer_cli_foreman_docker-0.0.4-4.el7.noarch
tfm-rubygem-hammer_cli_foreman_ssh-0.0.2-7.el7.noarch
tfm-rubygem-hammer_cli_foreman_tasks-0.0.13-1.fm1_20.el7.noarch
tfm-rubygem-hammer_cli_foreman_templates-0.1.2-1.fm1_20.el7.noarch
tfm-rubygem-hammer_cli_foreman_virt_who_configure-0.0.3-3.el7.noarch
tfm-rubygem-hammer_cli_katello-0.16.0-1.el7.noarch
tfm-rubygem-katello-3.10.0-1.el7.noarch

yum repolist:

  repo id                                                                                     repo name                                             
base/7/x86_64                                                                               CentOS-7 - Base                                         
centos-sclo-rh/x86_64                                                                       CentOS-7 - SCLo rh                                      
centos-sclo-sclo/x86_64                                                                     CentOS-7 - SCLo sclo                                    
*epel/x86_64                                                                                Extra Packages for Enterprise Linux 7 - x86_64          
extras/7/x86_64                                                                             CentOS-7 - Extras                                       
foreman/x86_64                                                                              Foreman 1.21                                            
foreman-plugins/x86_64                                                                      Foreman plugins 1.21                                    
foreman-rails/x86_64                                                                        Rails SCL for Foreman 1.21                              
katello/x86_64                                                                              Katello 3.10                                            
katello-candlepin/x86_64                                                                    Candlepin: an open source entitlement management system.
localoraclerepo                                                                             localOracle                                             
pulp/7/x86_64                                                                               Pulp Community Release                                  
puppetlabs-pc1/x86_64                                                                       Puppet Labs PC1 Repository el 7 - x86_64                
updates/7/x86_64                                                                            CentOS-7 - Updates                                      
yum.puppet.com_puppet5_el_7_x86_64_                                                         added from: https://yum.puppet.com/puppet5/el/7/x86_64/

#3

Hello,
Katello 3.10 is not compatible with Foreman 1.21.
Katello 3.11 should be out soon and will be compatible - @Jonathon_Turel can give us an updated estimate of when we can expect its release.


#4

Hello another noob user here.
Is Foreman 1.21 compatible with Katello 3.11 RC2?
From my usage so far IMHO it would seem that using Foreman with the Katello plug-in would be the most popular use case. Is it on the roadmap for these projects that going forward both latest releases of Katello & Foreman would be tested to make sure that they actually work together before releasing? I’ve read thru the release notes for each’s latest releases and I don’t see it stated in either that they are not compatible. Thankfully, you stated this above but you get the idea. :wink:

thanks
Greg


#5

Katello 3.11 RC2 was compatible (and tested with) Foreman 1.21 RC5. There were some changes. The 3.11 GA will be compatible with 1.21 GA.

We are working on loosening up the strict dependencies so this would work better for users. It’s currently targeted at 1.22.


#6

Hi,
Usually Katello is released in coordination with Foreman releases. In this case there was a significant bug (Bug #25515: Subscription detail page is empty - Katello - Foreman) that delayed the Katello release by a bit, but we are hoping to get the final 3.11.0 version packaged and released this week. 3.11 RC2 may work with 1.21, but keep in mind that it still contains a few bugs that were fixed for the final 3.11 release.

You are correct that there is no mention in the documentation of which Foreman version is compatible with which Katello version - PRs welcome! The Katello manual source can be found here: https://github.com/theforeman/theforeman.org/tree/gh-pages/plugins/katello/
There’s also been some discussions led by @rabajaj and @lzap regarding redesigning the manual completely. If you want to help in that effort I’m sure they’ll be happy :slight_smile:


#7

Thanks for the reply. :slight_smile:


#8

Thanks for the info. Actually as I learn more with this I’d be happy to help w/documentation around some of the things that I’ve been stumbling with (like this issue). The product that you all have built along w/all of the plugins is really awesome! :slight_smile:
thanks,
Greg


#9

Thanks mate… that explains quite a bit :wink:

Les


#10

@Les @thinkitdata Katello 3.11 is out now so your 1.21 dependency issues should be resolved! Here’s the release announcement: Katello 3.11 is now available!


#11

Hi Jonathon,

Thanks, I will give this a try. :slight_smile:
thanks,
Greg


Getting Started
#12

Finally got around to building a new instance of Foreman/Katello using versions 1.21.0 and 3.11. The install worked flawlessly so thanks and excellent job.

For some reason, it didn’t show the default login creds nor do I see them in /var/log/foreman-installer/katello.log… Am I looking in the wrong place?

[root@buildman ~]# foreman-installer --scenario katello --foreman-proxy-tftp=true
Installing Done [100%] […]
Success!

  • Katello is running at https://buildman.velab.cox.net

  • To install an additional Foreman proxy on separate machine continue by running:

    foreman-proxy-certs-generate --foreman-proxy-fqdn “$FOREMAN_PROXY” --certs-tar “/root/$FOREMAN_PROXY-certs.tar”
    The full log is at /var/log/foreman-installer/katello.log
    yum install -y -q rh-mongodb34-syspaths finished successfully!

thanks,
Greg


#13

So I was able to find the initial_admin_password here:

/etc/foreman-installer/scenarios.d/katello-answers.yaml

initial_admin_username: admin
initial_admin_password: vUerA7dnSXj358fL

-Greg


#14

That information make all the difference ! Thanks


#15

That doesn’t look like Bug #26256: foreman-proxy-certs-generate doesn't give the install command - Installer - Foreman

The Katello installer only outputs the credentials on the first run, after that it places a .installed file. Perhaps that already existed which is why it wasn’t shown? You could remove it, rerun the installer to verify this.

You can also pass --foreman-initial-admin-password mypassword to explicitly set it on fresh installs.


#16

Hello,

This was a fresh install on a newly built VM (CentOS-7-x86_64-Minimal-1810) so there was nothing preexisting. In any event that was the only snag. I’ll be building 2 more over the next week so I’ll try your suggestion if one of those exhibits the same problem.

thanks,
-Greg