At Monday 9/1/2006 12:15, Brian Sullivan wrote:

I am involved in maintaining a remote Zope site that is behind a
firewall where I have no remote access.

I have a (parallel) site that I use to test changes and upgrades that
is accessible to me.  I am a looking for a straightforward way to
package tested changes, send and have changes applied at the other end
-- without my physical presence (there is a systems maintenance person
a the other with reasonable broad systems knowledge but no in depth
Zope experience). The changes in this case consist of changes to or
new python scripts, dhtml methods and documents, or images spread
throughout a hierarchy of folders on the site.

We have a similar scenario. We had to develop an Updater product which basically does the following: - we pack the modified products / objects / whatever, along with a special 'update.py' script, in a Zip file - we send the file to the other guy who can do the update, and he uploads it using our Updater product - the zip file is then unpacked in a temp directory (honoring the possible subdirs structure) - the contained 'update.py' script (written each time by us) is executed (using execfile), its home directory being the temp dir, so it can access files and folders contained in the zip file easily. - that script is responsible of copying/updating things. Some handy functions (like shutil.copytree, copy2, etc) are available for its convenience. ZOPE_HOME, ProductXXX.__path__[0] and other variables are used to determine the destination directory for filesystem objects. For ZODB objects we use some helper functions which combine manage_addXXX/manage_editXXX as needed, to create new objects or update existing ones. - at the end, the temp dir is erased, some log records are updated, and usually the Zope service is restarted.


Gabriel Genellina
Softlab SRL
_______________________________________________
Zope maillist  -  Zope@zope.org
http://mail.zope.org/mailman/listinfo/zope
**   No cross posts or HTML encoding!  **
(Related lists - http://mail.zope.org/mailman/listinfo/zope-announce
http://mail.zope.org/mailman/listinfo/zope-dev )

Reply via email to