Bug 2192369 - pulp-manifest command not available
Summary: pulp-manifest command not available
Keywords:
Status: CLOSED CURRENTRELEASE
Alias: None
Product: Red Hat Satellite
Classification: Red Hat
Component: Packaging
Version: 6.11.4
Hardware: x86_64
OS: Linux
unspecified
high
Target Milestone: Unspecified
Assignee: satellite6-bugs
QA Contact: Satellite QE Team
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2023-05-01 17:27 UTC by Taft Sanders
Modified: 2023-08-07 19:13 UTC (History)
6 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2023-08-07 19:13:50 UTC
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Red Hat Issue Tracker SAT-18132 0 None None None 2023-06-06 08:12:32 UTC
Red Hat Knowledge Base (Solution) 7016057 0 None None None 2023-05-30 19:37:52 UTC

Description Taft Sanders 2023-05-01 17:27:36 UTC
Description of problem:
Following the directions from the documentation for creating a custom file type repository in a local directory[1] results in the `pulp-manifest` command not being available like in RHEL 8 Satellite 6.11

[1]: https://access.redhat.com/documentation/en-us/red_hat_satellite/6.11/html-single/managing_content/index#Creating_a_Remote_File_Type_Repository_content-management
Version-Release number of selected component (if applicable):
satellite-6.11.4.1-1.el7sat.noarch
tfm-pulpcore-python3-pulp_manifest-3.0.0-2.el7pc.noarch

How reproducible:
Every time

Steps to Reproduce:
1. Follow the steps from the documentation to install the tfm-pulpcore-python3-pulp_manifest package. NOTE: The package comes from 'rhel-7-server-satellite-6.11-rpms' or 'rhel-7-server-satellite-capsule-6.11-rpms' and not the 'rhel-7-server-rpms' or the 'rhel-7-server-satellite-utils-6.11-rpms' as the documentation states.
2. Try running the command `pulp-manifest`
3.

Actual results:
ON RHEL7:
[root@bombsat611-rhel7 ~]# yum install tfm-pulpcore-python3-pulp_manifest --disableplugin foreman-protector
Loaded plugins: langpacks, product-id, search-disabled-repos, subscription-manager
Resolving Dependencies
--> Running transaction check
---> Package tfm-pulpcore-python3-pulp_manifest.noarch 0:3.0.0-2.el7pc will be installed
--> Finished Dependency Resolution

Dependencies Resolved

============================================================================================================================================================================
 Package                                              Arch                     Version                            Repository                                           Size
============================================================================================================================================================================
Installing:
 tfm-pulpcore-python3-pulp_manifest                   noarch                   3.0.0-2.el7pc                      rhel-7-server-satellite-6.11-rpms                    16 k

Transaction Summary
============================================================================================================================================================================
Install  1 Package

Total download size: 16 k
Installed size: 25 k
Is this ok [y/d/N]: y
Downloading packages:
tfm-pulpcore-python3-pulp_manifest-3.0.0-2.el7pc.noarch.rpm                                                                                          |  16 kB  00:00:01     
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
  Installing : tfm-pulpcore-python3-pulp_manifest-3.0.0-2.el7pc.noarch                                                                                                  1/1 
  Verifying  : tfm-pulpcore-python3-pulp_manifest-3.0.0-2.el7pc.noarch                                                                                                  1/1 

Installed:
  tfm-pulpcore-python3-pulp_manifest.noarch 0:3.0.0-2.el7pc                                                                                                                 

Complete!

[root@bombsat611-rhel7 ~]# which pulp-manifest
/usr/bin/which: no pulp-manifest in (/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/opt/puppetlabs/bin:/root/bin)


Expected results:
# pulp-manifest 
usage: pulp-manifest [-h] directory
pulp-manifest: error: the following arguments are required: directory


Additional info:
On RHEL 8, the RPM `python38-pulp_manifest` contains the binary for the command:
# rpm -ql python38-pulp_manifest
/usr/bin/pulp-manifest
/usr/lib/python3.8/site-packages/pulp_manifest
/usr/lib/python3.8/site-packages/pulp_manifest-3.0.0-py3.8.egg-info
/usr/lib/python3.8/site-packages/pulp_manifest-3.0.0-py3.8.egg-info/PKG-INFO
/usr/lib/python3.8/site-packages/pulp_manifest-3.0.0-py3.8.egg-info/SOURCES.txt
/usr/lib/python3.8/site-packages/pulp_manifest-3.0.0-py3.8.egg-info/dependency_links.txt
/usr/lib/python3.8/site-packages/pulp_manifest-3.0.0-py3.8.egg-info/entry_points.txt
/usr/lib/python3.8/site-packages/pulp_manifest-3.0.0-py3.8.egg-info/top_level.txt
/usr/lib/python3.8/site-packages/pulp_manifest/__init__.py
/usr/lib/python3.8/site-packages/pulp_manifest/__pycache__
/usr/lib/python3.8/site-packages/pulp_manifest/__pycache__/__init__.cpython-38.opt-1.pyc
/usr/lib/python3.8/site-packages/pulp_manifest/__pycache__/__init__.cpython-38.pyc
/usr/lib/python3.8/site-packages/pulp_manifest/__pycache__/build_manifest.cpython-38.opt-1.pyc
/usr/lib/python3.8/site-packages/pulp_manifest/__pycache__/build_manifest.cpython-38.pyc
/usr/lib/python3.8/site-packages/pulp_manifest/build_manifest.py
/usr/share/doc/python38-pulp_manifest
/usr/share/doc/python38-pulp_manifest/README.md
/usr/share/licenses/python38-pulp_manifest
/usr/share/licenses/python38-pulp_manifest/LICENSE


On RHEL 7, the binary is placed inside of `/opt/theforeman/tfm-pulpcore/root/usr/bin/pulp-manifest` which is not accessible to the shell without changing configurations.

A workaround for this on RHEL 7 Satellite 6.11 is:
# yum install tfm-pulpcore-python3-pulp_manifest --disableplugin foreman-protector -y
# ln -s /opt/theforeman/tfm-pulpcore/root/usr/bin/pulp-manifest /usr/bin/
# mkdir /test
# PYTHONPATH='/opt/theforeman/tfm-pulpcore/root/usr/lib/python3.8/site-packages/' /usr/bin/pulp-manifest /test
# ls /test
PULP_MANIFEST


Note You need to log in before you can comment on or make changes to this bug.