Difference between revisions of "Documentation/ContentSharing"
(Separated out requirements more detailed, put exclamation marks on CamelCase words like OpenStack so they don't appear as links) |
|||
Line 4: | Line 4: | ||
== Requirements == | == Requirements == | ||
− | * Non-proprietary | + | * Non-proprietary OpenStack content resides in OpenStack repository. |
+ | * Ability to substitute variables for product name, endpoints, and so on. | ||
+ | * Source remains consumable by OpenStack and non-[[OpenStack]] consumers. | ||
* Proprietary content resides in non-[[OpenStack]] repositories. Consumable by non-[[OpenStack]] consumers. | * Proprietary content resides in non-[[OpenStack]] repositories. Consumable by non-[[OpenStack]] consumers. | ||
− | * When consumers create content, they include both | + | * When consumers create content, they include both OpenStack and proprietary source files in their master book files, as needed. Source files can reside in different repositories. |
* When consumers generate output, they enter values for substitution variables. Ex: productname="Rackspace Cloud Servers" | * When consumers generate output, they enter values for substitution variables. Ex: productname="Rackspace Cloud Servers" | ||
== Risks == | == Risks == | ||
− | * | + | * OpenStack source updates break non-[[OpenStack]] books that include that content. |
− | * | + | * OpenStack consumers find the added abstraction layer (substitution variables) annoying to work with. |
== Implementation == | == Implementation == | ||
Line 18: | Line 20: | ||
* Proof of concept: Verify possibility of cross-repository communication. Work out how to implement substitution variables. | * Proof of concept: Verify possibility of cross-repository communication. Work out how to implement substitution variables. | ||
* Determine which substitution variables are required. Product name? Endpoints? Version number? | * Determine which substitution variables are required. Product name? Endpoints? Version number? | ||
− | * Update | + | * Update OpenStack source with substitution variables and publish these for public consumption. |
− | * Update non-[[OpenStack]] book files to include | + | * Update non-[[OpenStack]] book files to include OpenStack source. |
− | * Content developers subscribe to | + | * Content developers subscribe to OpenStack source file changes to ensure any updates do not break their content. |
Revision as of 21:05, 15 March 2012
OpenStack Content Sharing
Requirements
- Non-proprietary OpenStack content resides in OpenStack repository.
- Ability to substitute variables for product name, endpoints, and so on.
- Source remains consumable by OpenStack and non-OpenStack consumers.
- Proprietary content resides in non-OpenStack repositories. Consumable by non-OpenStack consumers.
- When consumers create content, they include both OpenStack and proprietary source files in their master book files, as needed. Source files can reside in different repositories.
- When consumers generate output, they enter values for substitution variables. Ex: productname="Rackspace Cloud Servers"
Risks
- OpenStack source updates break non-OpenStack books that include that content.
- OpenStack consumers find the added abstraction layer (substitution variables) annoying to work with.
Implementation
- Proof of concept: Verify possibility of cross-repository communication. Work out how to implement substitution variables.
- Determine which substitution variables are required. Product name? Endpoints? Version number?
- Update OpenStack source with substitution variables and publish these for public consumption.
- Update non-OpenStack book files to include OpenStack source.
- Content developers subscribe to OpenStack source file changes to ensure any updates do not break their content.