Jason,
I assumed that you copied your bits from dev on up.  That's the way we would do it as 
well.  

I see you say that you have builds archived as well.  Do you do this in addition to 
your source control repository?  It seems that I could rebuild based on a label in my 
source in case something came up as well.

Eric

-----Original Message-----
From: Morris, Jason [mailto:[EMAIL PROTECTED]
Sent: Thursday, January 08, 2004 1:39 PM
To: [EMAIL PROTECTED]
Subject: RE: [Nant-users] Newbie question on using nant to push to
production


I don't rebuild the source either.  The only time the source gets built
is the initial move to development.  Once that is built, then we copy
the same bits to integration, pre-prod and production.  So, our build
process is

Build to Development (new version number)
Copy version x.x.x.x to Integration
Copy version x.x.x.x to Pre-production
Copy version x.x.x.x to Production

This way our Promote target, i.e. copy to our integration environment,
specifies which version of the web app to promote.

        <target name="promote" depends="env-int" description="Promotes
CAPability to the Integration environment">
                
                <property name="build.name"
value="${project.name}-2.9.0.11" />
                <property name="build.dir"
value="${draco.build.dir}\${build.name}" />
                <property name="draco.output.dir"
value="${draco.build.dir}\output" />
                <property name="db.scripts.dir"
value="${build.dir}/dbScripts" />
                
                <call target="info" />
                
                <echo message="" />
                <echo message="Promoting ${project.name} (${build.name})
to integration enviroment!" />
                <echo message="" />

                <echo message="Restoring and updating ${project.name}'s
integration DB from latest backup of production..." />
                <call target="update-db"/>

                <echo message="Updating ${project.name}'s web server..."
/>
                <call target="clean-webserver" if="${doClean}" />
                <call target="update-webserver" />
                <call target="update-web-cachemonitor" />
                
                <echo message="Running customer acceptance tests for
${project.name} (${build.name})" />
                <echo message="" />
                <call target="customer-test" />
                
        </target> 

My group works only with internal customers, so we don't have to ship
anything externally.  We also completely control our production servers,
so some of the things Damir was talking about are not much of a concern
for us.  Our web app is contained under one directory, so the event of a
problem, we can wipe this one directory clean and copy back the last
know good.

However, on our build server, we do maintain a directory structure with
each version of the build on it, so that if the new build is bad
(somehow got past our unit and customer tests), we copy the bits from a
previous build back to the production server.

C:\prject.name\builds\1.0.0.0\
                           \1.0.0.1\
                           \1.0.0.2\
                           etc

Just clarify my build process.

Jason

>Eric,
> 
> 
>The step that moves the results to production is different than other
steps, inasmuch as you should move the tested bits >from test/staging,
not re-build the source.
> 
>I prefer to use .msi installers for deployment -- you get uninstall
capability for free, and also increase your 
>manageability, as you can much easier control what is installed on the
machine remotely (through wmi, sms or the like). 
>Plus, .msi is easy to keep around in the archive, even after you purge
older builds from the build server. And, you can 
>ship it remotely without requiring the user to re-create the build
environment.
> 
>If you deploy with NAnt script, you also have to write and test the
uninstall script and have to keep around a exact 
>version of the NAnt binary you used, or constantly re-test with latest
builds.
> 
>Of course YMMV, as I don't know how often do you push your builds to
production.
> 
> 
>Cheers,
> 
>Damir
 


________________________________

From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED] On Behalf Of Landes Eric
(RBNA/CIT4.2)
Sent: Thursday, January 08, 2004 5:22 PM
To: [EMAIL PROTECTED]
Subject: [Nant-users] Newbie question on using nant to push to
production



Just wanted to see if I'm on the right track here.  Do others use nant
(in combination with something like Cruise Control.net or Draco.net) to
push builds to a production environment?  I'm wanting to automate our
builds hoepfully from development to test to production, and it looks
like I could use these tools to get there.  Of course from Test to
Production would have to be controlled some type of flag to automate the
deployment of the current version.  

I want to make sure that there's no pitfalls to this approach.  I'd
appreciate anyones comments, links or experiences with this.  We're an
in-house dev shop, with .net web apps.  TIA

******************************************* 
Eric Landes 
Robert Bosch Corporation - Automotive Group 
******************************************* 
Computer Information Technology Office - Engineering Applications 
401 N. Bendix Drive  - South Bend, IN 46628 
Phone:  574-237-2290 
Fax:   574-237-3105 




-------------------------------------------------------
This SF.net email is sponsored by: Perforce Software.
Perforce is the Fast Software Configuration Management System offering
advanced branching capabilities and atomic changes on 50+ platforms.
Free Eval! http://www.perforce.com/perforce/loadprog.html
_______________________________________________
Nant-users mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/nant-users


-------------------------------------------------------
This SF.net email is sponsored by: Perforce Software.
Perforce is the Fast Software Configuration Management System offering
advanced branching capabilities and atomic changes on 50+ platforms.
Free Eval! http://www.perforce.com/perforce/loadprog.html
_______________________________________________
Nant-users mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/nant-users

Reply via email to