From Fedora Project Wiki

< Modularity‎ | Architecture

Revision as of 18:06, 19 August 2016 by Nphilipp (talk | contribs) (initial version of the page)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

PDC already stores data about products, releases and related information, but for modules we need to record additional things.

This page is about these changes, and how they should fit together with the existing structures.

Models

The main new models are UnreleasedVariant which is where we store modules (but other stuff may use this, too, in the future, so it's a generic term) and Tree which carries each tree created for one such module. This is so we can store e.g. RPM packages for a module which isn't yet tied to a release, because we may not know that at the time we build the module. There are peripheral models, e.g. for storing inter-module dependencies, but they aren't fleshed out yet, so not described here.

Diagram

This abridged ER diagram outlines the changes we plan to do in terms of what's stored in the database. Everything upwards from and including ReleaseVariant are existing tables, everything below is new for Modularity. New relations are from the UnreleasedVariant to ReleaseVariant and from Tree to ComposeTree.

Modularity-Architecture-PDC-Compose-Release-Trees-ER.png

See Also