[ic] Production deployment methods

K Old kold at kold.homelinux.com
Fri Aug 29 15:58:52 EDT 2003


On Thu, 2003-08-28 at 14:46, Jason Lee wrote:
> Hi all,
> 
> I'm at the point in my IC (4.9.8) development where our soon to be 
> production server is being tested on a regular basis. Soon, this will 
> go live soon and I'll be relying on a staging server to make changes 
> and test with. Currently this machine is also running Samba so my Mac, 
> Linux, and Win machines can do various editing of my store files. For 
> production, this will obviously be turned off.
> 
> Coming from, mostly, the Java world, this is accomplished by taking the 
> web app and performing a hot-deploy it on the app server. But IC is a 
> different system and therefore I'm trying to figure out the best way to 
> deploy. It will be ok if the server needs to go down for a few mins.
> 
> I'd like to be able to edit locally on my machine and push to the prod 
> machine or even edit a local network dev server and then test and then 
> push to prod. I was thinking about rsync'ing from a stage machine to 
> the prod machine, but I would really prefer to use some sort of SSH or 
> SCP to get changes out to that prod  machine since if I was ever 
> remote, this would work nicely - I wouldn't be just tied to my local 
> network to make changes in other words. Nor would other possible 
> contributors.
> 
> So, does anyone have any suggestions or examples they've used? I'm sure 
> some have come across this issue.
> Like I said, in the Java world, we used CVS to check out our code base 
> on a stage machine and if it passed, then we'd archive the app and push 
> out the prod using various scripts that contained SCP/SSH commands in 
> them. So something like this would be ideal for me, but I'd like to get 
> others input before I embark on this.
> 
Jason,

I currently use CVS to keep my dev and prod environments.  I'm sure
you've seen the IC-CVS-HOWTO at:
http://www.interchange.rtfm.info/docs/rtfm_ic_howto_cvs.html.

It'll explain how to get everything setup and once you make a change you
can use the following shell script to "sync" your dev and production. 
This example assumes your catalog name is "em"


#!/bin/bash

CVSROOT=:pserver:ic at 172.16.1.233:/rep
export CVSROOT

cvs -d :pserver:user:pass at 172.16.1.233:/rep login
cvs update em

On syncing Mysql....
For 3.x

From
http://www.mysql.com/documentation/mysql/bychapter/manual_MySQL_Database_Administration.html#mysqldump

<snip>
However, it's also very useful to populate another MySQL server with
information from a database:

mysqldump --opt database | mysql --host=remote-host -C database
</snip>

For Mysql 4.x
http://www.mysql.com/doc/en/Replication_Options.html

Hope this helps,
Kevin
-- 
K Old <kold at kold.homelinux.com>



More information about the interchange-users mailing list