You are not logged in Log in Join
You are here: Home » Members » k_vertigo » Products » CMFDeployment

Log in
Name

Password

 
 

CMFDeployment

Introduction

This tool allows for static deployment of a CMF site to multiple target systems akin to the deployment features of advanced commerical CMS systems like interwoven or vignette.

Features

  • Allows for custom skins for deployment separate then content management interface.
  • allows for business logic to filter deployed content using TALES expressions and Python Scripts
  • Pluggable Deployment Strategies (Incremental, Full)
  • Pluggable Deployment Protocols, (currently RsyncSSH)
  • retraction of deployed content (using RsyncSSH protocol)
  • Deployment to multiple servers
  • Merging of DirectoryView (skin) resources into merged content.
  • Provides for Mime and Extension mapping to content
  • Provides for configurable URI Resolving of internal links within rendered content.
  • extensive statistics gathering and logging frameworks
  • and many more.

Todo Before 1.0

  • speed/memory optimization of incremental strategy
  • more documentation, online help
  • management ui cleanup
  • extreme load testing

Installation

Developed and Tested on Linux (2.4), Solaris 9, with Python 2.1.3, Zope 2.5.1 and CMF1.3

  • Decompress distribution file and move to Products directory.
  • restart zope
  • in the root of the cmf site, add an external method:
          Id: install_deployment_tool
          Module: CMFDeployment.Install
          Function: install
    
  • click on the test tab to complete installation

Optionally, you can install iuveno's OrderedFolder product to allow for explict ordering of filters, python scripts, and mime mappings. One warning, if your using OrderedFolder in conjunction with exUserFolder, you need to patch OrderedFolder to disable the dummy zbabel tags.

Debian users will need to install the pyxml package.

Configuration

The use of this tool requires configuration of several sections, outlined below. further documentation can be found in the docs directory.

Identification

Identifies Content that should be deployed. The Portal Catalog is used as a content source, TALES Filters and Python Script Filters can be used to filter the available content set, and restrict what content objects will be deployed.

Organization

Organizes the content in a target directory structure. The default structure and organization implementation, utilizes the existing cmf structure, although it does allow for mounting from a non portal root folder.

Mastering

The process of rendering/cooking the content.

  • skin selection
  • mime mapping configuration for content
  • render method selection for content

URIS Link Normalization

During the mastering process the rendered view of content has extensions attached, and intra object references in rendered content need to be updated, as well as target url host information.

Directory View (skin) Merging

Skins .. Directory Views

certain resources of directory views often need to be deployed alongside content.

Deployment

The actual deployment of content to the target server.

Targets

Protocols

Libraries

This Product is distributed with the following third party modules which are included here under their original license terms, and are distributed here for convience (all such files can be found under CMFDeployment/lib)

  • pypect:"http://pyexpect.sf.net" - Noah Spurrier (Python License)
  • policycaller:"http://cvs.zope.org/Products/Scheduler/methodcaller.py" (ZPL)
  • linuxproc:"http://www.zope.org/Members/mcdonc" (ZPL)
  • LockFile:"http://www.list.org" (GPL)

License and Copyright

  • @ kapil thangavelu 2002
  • GPL

Credits

Kapil Thangavelu - Author

I'd like to thank alan runyaga for much dicussion and feedback on this tool. It has benefited greatly from his insights and wisdom.

I'd like to thank my employer for allowing me to opensource this tool that was developed at their cost. Without companies and clients such as them the open source world would be a much poorer place.

Latest Release: default
Last Updated: 2002-08-18 19:20:06
Author: ZopeOrgSite
Categories: Developer
Maturity: Development

Available Releases

Version Maturity Platform Released
default Development   2002-08-18 19:20:06
  CMFDeployment-0-2-0.tgz (31 K) Generic UNIX-like
1.0.0-beta1 Stable   2002-10-21 12:36:14
  CMFDeployment-1.0.0-beta1.tgz (69 K) Generic UNIX-like