Feature #3859
openNeed object label support for objects in Foreman core
Description
This issue is to request the inclusion of a ASCII restricted, human readable field that is associated with objects within Foreman's database.
We are currently uniquely identifying objects in the hammer CLI and REST API with the concept of an --object-id but this is currently tied to the database ID only. We want to expand this to be able to reference an ASCII restricted field that uniquely identifies the object.
BACKGROUND AND JUSTIFICATION:
Katello interfaces with several backend services (e.g. candlepin, pulp...etc) and it creates various objects (e.g. Organization, Environment, Product, Repository...etc) to provide it's functionality. The objects created need to be given names that are meaningful for the user/administrator; however, the objects need to be usable for interfacing with the backend services in situations where the character set is restricted to ASCII only.
One of the largest drivers for this is Katello's production of objects that get published into yum repositories, for example:
[DemoOrg_Enterprise_Widgets_enterprise-widgets-1-noarch]
name = enterprise-widgets-1-noarch
baseurl = https://foreman.example.com/pulp/repos/DemoOrg/DEV/DEPLOY-FullStack-View/custom/Enterprise_Widgets/enterprise-widgets-1-noarch
enabled = 1
that yum config has a few database concenpts embedded with in it, the repoid is decomposed from:
DemoOrg_Enterprise_Widgets_enterprise-widgets-1-noarch
to:
<ORG>_<Product>_<Repo>
it is critical to our users that we do not populate these configurations with unintelligible UUIDs, database IDs or something unreadable as it makes using yum with Katello and Foreman difficult. With the inclusion of an ASCII label that is based on the name of the object we can keep these
some historical background here: