Changes between Satellite 5.4.1 and 5.4.0 in kickstart profiles.

Solution Verified - Updated -

Environment

  • Red Hat Satellite 5.4.1
  • Red Hat Satellite 5.4.0

Issue

Is it possible to use the packages from rhn-tools in kickstart form Satellite 5.4.0 by default?
Here is the example of the kickstart post section which works in Satellite 5.4.0 by default:

...
%post --logfile /root/ks-post.log.1
set -x
yum repolist
yum install -y python-hashlib
...

The same %post section does not work in Satellite 5.4.1 and an error will appear in the /root/ks-post.log.1.

Resolution

  • If the kickstart profile is created in Satellite 5.4.0, then the activation key is created. This key is only visible through the API and looks like:
# spacewalk-api --server 127.0.0.1 --user satadmin --password redhat activationkey.listActivationKeys     "%session%"
$result = [
            {
              'base_channel_label' => 'none',
              'entitlements' => [
                                'provisioning_entitled'
                              ],
              'description' => 'Kickstart re-activation key for  .',
              'key' => '1-857609dda9e937f19a4a79ea46a1ca18',
              'universal_default' => bless( do{\(my $o = '0')}, 'Frontier::RPC2::Boolean' ),
              'packages' => [],
              'child_channel_labels' => [
                                        'rhn-tools-rhel-x86_64-server-5'
                                      ],
              'server_group_ids' => [],
              'package_names' => [],
              'usage_limit' => '0'
            }
          ];

By default it contains a sub-channel "rhn-tools-rhel-x86_64-server-5".

  • The behaviour of the Satellite 5.4.1 is different as it doesn't contain any sub-channels (child_channel_labels) by default:
# spacewalk-api --server 127.0.0.1 --user satadmin --password redhat activationkey.listActivationKeys "%session%"
$result = [
            {
              'base_channel_label' => 'none',
              'disabled' => bless( do{\(my $o = '0')}, 'Frontier::RPC2::Boolean' ),
              'entitlements' => [
                                'provisioning_entitled'
                              ],
              'description' => 'Kickstart re-activation key for  .',
              'key' => '1-2604d0b40dc01e39f8c60e1f0a80e6cb',
              'universal_default' => bless( do{\(my $o = '0')}, 'Frontier::RPC2::Boolean' ),
              'packages' => [],
              'child_channel_labels' => [],
              'server_group_ids' => [],
              'package_names' => [],
              'usage_limit' => '0'
            }
          ];

Root Cause

There is a difference between Satellite 5.4.0 and 5.4.1 by handling the kickstart profiles and sub-channels.

Diagnostic Steps

These errors can be found in the logs:

yum install -y python-hashlib
Loaded plugins: rhnplugin
Setting up Install Process
No package python-hashlib available.
Nothing to do

This solution is part of Red Hat’s fast-track publication program, providing a huge library of solutions that Red Hat engineers have created while supporting our customers. To give you the knowledge you need the instant it becomes available, these articles may be presented in a raw and unedited form.

Close

Welcome! Check out the Getting Started with Red Hat page for quick tours and guides for common tasks.