[katello-devel] Renaming of environments: summary, take II

Bryan Kearney bkearney at redhat.com
Fri Aug 17 20:38:48 UTC 2012


On 08/17/2012 11:09 AM, Dmitri Dolguikh wrote:
> On 17/08/12 04:05 PM, Mike McCune wrote:
>> On 08/17/2012 07:32 AM, Dmitri Dolguikh wrote:
>>> On 17/08/12 03:13 PM, Bryan Kearney wrote:
>>>> On 08/15/2012 01:46 PM, Dmitri Dolguikh wrote:
>>>>> Please see original conversation thread [1], first attempt at summary
>>>>> [2], and BZ [3] for details.
>>>>>
>>>>> The majority of the conversation revolved around use of human-readable
>>>>> ids to preserve user-friendiness of urls vs. using uuids to preserve
>>>>> data consistency of client applications that use Katello API. Another
>>>>> concern expressed was readability of repository urls genereated by
>>>>> Katello in yum configuration files. It was suggested to use
>>>>> Punycode for
>>>>> encoding of non-ascii-based labels.
>>>>>
>>>>> Proposed changes:
>>>>>    - introduce immutable labels
>>>>>    - replace use of environment name with environment label in urls
>>>>> not
>>>>> impacting data integrity, such as repository urls. This would
>>>>> eliminate
>>>>> the need for entitlement certificate regeneration after environment
>>>>> name
>>>>> changes
>>>>>    - introduce uuids, and replace current use of primary db keys in
>>>>> resource urls with uuids
>>>>>
>>>>> Tasks on Katello side:
>>>>>    - take a look at and implement Punycode
>>>>>    - introduce environment labels: db changes, model changes,
>>>>> controller
>>>>> changes
>>>>>    - introduce uuids: db changes, model changes, controller changes
>>>>>    - figure out migration for existing Katello installations
>>>>>
>>>>> Tasks on Candlepin side:
>>>>>    - add label and uuid fields to model. Replace use of environment
>>>>> names
>>>>> with environment labels
>>>>>
>>>>>
>>>>>
>>>>> [1]
>>>>> https://www.redhat.com/archives/katello-devel/2012-August/msg00102.html
>>>>>
>>>>> [2]
>>>>> https://www.redhat.com/archives/katello-devel/2012-August/msg00144.html
>>>>>
>>>>> [3] https://bugzilla.redhat.com/show_bug.cgi?id=795928
>>>>> [4] http://en.wikipedia.org/wiki/Punycode
>>>>>
>>>>
>>>> so, in katello, if I create an environment called JarJar, a product
>>>> called Binks, and a repo called IsASuperStar, today I would see this:
>>>>
>>>> [jarjar-binks-IsASuperStar]
>>>> Name: JarJarBinksIsASuperStar
>>>> baseurl:JarJar/Binks/IsASuperStar
>>>>
>>>> What will i see tomorow?
>>>>
>>>> - bk
>>> I'm assuming that you are asking what you are going to see in yum
>>> repository configuration file. I'm proposing to keep that file without
>>> any changes, with the exception that we use environment label instead of
>>> the name. For existing installations, I'm proposing to initialize label
>>> with current environment name during the migration.
>>>
>>
>> that sounds perfect .. label is fine
> Note that we could use the environment name in yum repository url too,
> but that would result in en-masse certificate regeneration for all
> systems in a given environment on environment name change.
>


so, we oculd end up with an environment named Dev, with a label of Prod. 
Kinda a hokey example.. but ok. I would envision, at some point, haveing 
an admin task which does the label rename and regens all the certs.

-- bk





More information about the katello-devel mailing list