Shawn Walker wrote:
> Greetings,
> 
> In today's pkg team discussion, the topics of staged publishing and 
> repository deployment came up.
> 
> Here's my proposed solution:
> 
> Staged Publishing
> =================
> Staged publishing being defined as the ability to publish packages to a 
> repository without packages from a given publishing "session" being 
> added to the catalog until explicitly instructed.
> 
> Right now, if clients retrieve a new catalog from a repository as a new 
> OpenSolaris release is being published, they may inadvertently attempt 
> to upgrade to a release that hasn't yet had all of its packages 
> published causing errors.
> 
> Changing the publishing step so that packages added during a "publishing 
>   session" are not added to the "current" catalog, until instructed, 
> would allow a repository to remain available during publishing without 
> negatively impacting clients in the aforementioned way.
> 
> To implement this, the depot server needs to be changed to support two 
> publishing modes: immediate and staged.
> 
> - Immediate publishing mode would add packages to the catalog and 
> updatelog as they are published (matches existing behaviour) and would 
> be the default.
> 
> - Staged publishing mode would add packages to a special temporary 
> catalog and updatelog file until the depot is instructed to "commit" 
> whatever packages have been published so far.  Once the depot is 
> instructed to "commit" these packages, it will add the contents of the 
> temporary catalog and updatelog files to the current catalog and 
> updatelog (repo_dir/catalog/).  It will then create a copy of the 
> current catalog and updatelog and place them into 
> repo_dir/catalogs/ISO8601DATE/.
> 
> Staged Deployment
> =================
> Staged deployment being defined as the ability to serve multiple 
> versions of the catalog.
> 
> This would require changing the depot server to allow the administrator 
> to provide a date representative of a catalog snapshot 
> (repo_dir/catalogs/ISO8601DATE/) to serve instead of serving the current 
> catalog data (repo_dir/catalog/).
> 
> Storing the current catalog in repo_dir/catalog allows backwards 
> compatibility with our existing depot versions allowing staged 
> deployment/publishing catalog support to simply be ignored by older 
> depot versions.

Are there any more comments on this?

Cheers,
-- 
Shawn Walker
_______________________________________________
pkg-discuss mailing list
[email protected]
http://mail.opensolaris.org/mailman/listinfo/pkg-discuss

Reply via email to