[katello-devel] Modelling of environments, products, etc in Katello (related to renaming of environments)

Dmitri Dolguikh dmitri at redhat.com
Thu Aug 9 15:51:21 UTC 2012


Since uuids got no love, let's replace uuids with immutable 
human-readable labels.
-d

On 09/08/12 12:34 PM, Dmitri Dolguikh wrote:
> Please see https://bugzilla.redhat.com/show_bug.cgi?id=795928 for 
> description of an issue with environment renaming.
>
> The immediate problems around environments: using of environment names 
> and environment ids for identification of environments 
> interchangeably. Using db ids for environment identification when not 
> using environment names.
>
> To resolve these:
>  - introduce environment uuids
>  - update katello/katello cli to use uuids for environment identification
>  - update repository naming to use environment uuids
>  - update candlepin (this will include updates to schema, and resource 
> controller)
>
>
> The larger problem: Katello and Candlepin modelling of 
> products/product content/environments lost coherency.
>
> Candlepin's view of the above trifecta (use of a monospaced font is 
> encouraged for the content below):
> +-------------+          +--------------------+
> | Environment | 1 <--- * | EnvironmentContent |
> +-------------+          +--------------------+
>                                 ^
>                                 | *
>                                 | 1
>     +---------+          +----------------+
>     | Product | 1 ---> * | ProductContent |
>     +---------+          +----------------+
>
>
> same thing in Katello (with added pulp repositories):
>
>    +-------------+
>    | Pulp::Repos |<-----------------------+
>    +-------------+                        |
>        ^                                  |
>        | uses                             |
>     +----------------------------------+  |  +-------------+
>     | Candlepin::Product               |  |  | Environment |
>     | (uses Candlepin::ProductContent) |  |  +-------------+
>     +----------------------------------+  |          ^
>        |       ^                          |          | 1
>        |uses   | uses                     |          |
>        |       |                          |          | *
>       +---------+                      +--------------------+
>       | Product | 1 ---------------> * | EnvironmentProduct |
>       +---------+                      +--------------------+
>                                           |          |1
>                                           |          |*
>                                           |          V
>                                           | uses +------------+
>                                           +------| Repository |
>                                                  +------------+
>
>
> I propose:
>  - Rename EnvironmentProduct to ProductContent
>    - make it use Candlepin::ProductContent
>    - remove use of Pulp::Repos from Product
>    - delegate responsibility of generation of environment uuids to 
> Candlepin (should cp folks agree on this)
>
> resulting in:
>
>                         +-------------+
>                         | Environment |
>                         +-------------+
>                                ^
>                                | 1
>                                | *
>   +---------+          +----------------+
>   | Product | 1 ---> * | ProductContent |
>   +---------+          +----------------+
>                            |1  | uses
>                            |   |    +---------------------------+
>                            |1  +->  | Candlepin::ProductContent |
>                            V        +---------------------------+
>     +-------------+ uses +------------+
>     | Pulp::Repos |<-----| Repository |
>     +-------------+      +------------+
>
> I don't think many-1 relation is required on 
> Repository-ProductContent, it's 1-1?
>
>
> Thoughts, concerns, opinions?
> -d
>
>
>
>
>
>
> _______________________________________________
> katello-devel mailing list
> katello-devel at redhat.com
> https://www.redhat.com/mailman/listinfo/katello-devel


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://listman.redhat.com/archives/katello-devel/attachments/20120809/f8ab56fa/attachment.htm>


More information about the katello-devel mailing list