Jump to: navigation, search

Difference between revisions of "Documentation/ContentSharing"

Line 20: Line 20:
 
** Update OpenStack source with substitution variables and publish these for public consumption.
 
** Update OpenStack source with substitution variables and publish these for public consumption.
 
** Update non-OpenStack book files to include OpenStack source.
 
** 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.
+
** Content developers subscribe to OpenStack source file changes to ensure any updates do not break their content
* Stakeholders
 
** Proof of concept: David Cramer, Anne Gentle, Diane Fleming
 
** Content requirements: David Hendler, Diane Fleming, Anne Gentle
 
** Content development: David Hendler, Diane Fleming, Anne Gentle
 
  
Phases include:
+
=== Implementation Phases ===
  
 
# Variable substitution
 
# Variable substitution
Line 32: Line 28:
 
# Cross-repo inclusions/exclusions
 
# Cross-repo inclusions/exclusions
 
# Public/private inclusions/exclusions where one repo is source repo (this is not necessarily ideal for OpenStack content sharing)
 
# Public/private inclusions/exclusions where one repo is source repo (this is not necessarily ideal for OpenStack content sharing)
 +
 +
=== Stakeholders ===
 +
* Proof of concept: David Cramer, Anne Gentle, Diane Fleming
 +
* Content requirements: David Hendler, Diane Fleming, Anne Gentle
 +
* Content development: David Hendler, Diane Fleming, Anne Gentle
  
 
== Workflow ==
 
== Workflow ==

Revision as of 16:24, 22 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 contributors find the added abstraction layer (substitution variables) annoying to work with.
  • An OpenStack change to an API does not actually affect a non-OpenStack API implementation, how to handle?

Implementation

  • Proof of concept: Verify possibility of cross-repository communication. Work out how to implement substitution variables.
  • Content requirements: Determine which substitution variables are required. Product name? Endpoints? Version number?
  • Content development:
    • 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

Implementation Phases

  1. Variable substitution
  2. Conditional inclusions/exclusions of sections or chapters with branding changes in a single repo
  3. Cross-repo inclusions/exclusions
  4. Public/private inclusions/exclusions where one repo is source repo (this is not necessarily ideal for OpenStack content sharing)

Stakeholders

  • Proof of concept: David Cramer, Anne Gentle, Diane Fleming
  • Content requirements: David Hendler, Diane Fleming, Anne Gentle
  • Content development: David Hendler, Diane Fleming, Anne Gentle

Workflow

Changes from OpenStack community contributor >>>> what does this look like?

Changes from non-OpenStack contributor >>>> what does this look like?