Re: Development Environment Setup

2006-08-11 Thread Tom Chiverton
On Wednesday 09 August 2006 14:19, Neil Middleton wrote:
 As you can guess, this isn't the best, and I personally would like to see
 us using a better source control system (Subversion?).  I would also the

We've just moved to SVN from SourceSafe (mainly because the 3rd party Linux 
VSS client sucked).

 like the source control and release process to be a lot more transparent in
 the overall process.

Transparent to who ?
SVN:Web maintains a nice web based view of the repository, complete with RSS 
feed :-)

 I have seen mentions of people having devs running their own instances of
 CF/SQL, but how the hell do you keep these up to date without creating a
 logistical nightmare (i.e making sure every developer is in sync with both
 code and external requirements such as IIS setup?)

I would definetly say each developer should have their own CF instance, and 
possibly DB in the early stages where DB changes are likely to break lots of 
code.

Look at something called Scrum:- see the bottom of 
http://www.controlchaos.com/old-site/rules.htm and also 
http://www.controlchaos.com/about/
This stops people from drifting too far apart, amongest other benefits

We also have a convention that if you touch a shared component, you email the 
rest of the dev. team and they can update from SVN when they are ready.

If you can get a continuous integration (automated nightly build and check) 
system up and running, so much the better - you can quickly ID if anyones 
checks have broken the build.

-- 
Tom Chiverton



This email is sent for and on behalf of Halliwells LLP.

Halliwells LLP is a limited liability partnership registered in England and 
Wales under registered number OC307980 whose registered office address is at St 
James's Court Brown Street Manchester M2 2JF.  A list of members is available 
for inspection at the registered office. Any reference to a partner in relation 
to Halliwells LLP means a member of Halliwells LLP. Regulated by the Law 
Society.

CONFIDENTIALITY

This email is intended only for the use of the addressee named above and may be 
confidential or legally privileged.  If you are not the addressee you must not 
read it and must not use any information contained in nor copy it nor inform 
any person other than Halliwells LLP or the addressee of its existence or 
contents.  If you have received this email in error please delete it and notify 
Halliwells LLP IT Department on 0870 365 8008.

For more information about Halliwells LLP visit www.halliwells.com.


~|
Introducing the Fusion Authority Quarterly Update. 80 pages of hard-hitting,
up-to-date ColdFusion information by your peers, delivered to your door four 
times a year.
http://www.fusionauthority.com/quarterly

Archive: 
http://www.houseoffusion.com/groups/CF-Talk/message.cfm/messageid:249610
Subscription: http://www.houseoffusion.com/groups/CF-Talk/subscribe.cfm
Unsubscribe: http://www.houseoffusion.com/cf_lists/unsubscribe.cfm?user=89.70.4


Re: Development Environment Setup

2006-08-10 Thread Jochem van Dieten
Douglas Knudsen wrote:
 and who is to audit and ensure the developer is doing this?

The security department. If they have such a large network to monitor I am sure 
they run regular Nessus scans and automatically quarantaine problems anyway. 


 Further more
 shouldn't this config be something the PC support folks should setup and
 maintain?

Not necessarily. For a local development setup you do not need Local 
Administrator, Power User is more then enough. (But if the PC support folks 
want to get involved you can do with User and a little bit of Security 
Templates voodoo.)


 In a large organisation with 1+ PCs these are big and costly
 issues, eh?  A security head might just make seemingly idiotic choices to
 save their respective butts, eh?  Remember NIMDA?

The good old days you mean. Yea, I remember that: patches came out only every 
now and then, you had about three months to apply them before they were 
exploited.


It is just a matter of procedure. I put yesterdays Admin API patch from Adobe 
on the build server yesterday morning and everybody who gets a new build today 
is patched. Piece of cake.

Jochem

~|
Introducing the Fusion Authority Quarterly Update. 80 pages of hard-hitting,
up-to-date ColdFusion information by your peers, delivered to your door four 
times a year.
http://www.fusionauthority.com/quarterly

Archive: 
http://www.houseoffusion.com/groups/CF-Talk/message.cfm/messageid:249402
Subscription: http://www.houseoffusion.com/groups/CF-Talk/subscribe.cfm
Unsubscribe: http://www.houseoffusion.com/cf_lists/unsubscribe.cfm?user=89.70.4


Re: Development Environment Setup

2006-08-10 Thread Jochem van Dieten
Neil Middleton wrote:
 
 I have seen mentions of people having devs running their own instances of
 CF/SQL, but how the hell do you keep these up to date without creating a
 logistical nightmare (i.e making sure every developer is in sync with both
 code and external requirements such as IIS setup?)

The first piece of code that goes into a project is the Application.cfc that 
uses the Admin API to set up the relevant externals. For code synchronizing 
Eclipse has a very nice Team Synchronize feature.

Jochem

~|
Introducing the Fusion Authority Quarterly Update. 80 pages of hard-hitting,
up-to-date ColdFusion information by your peers, delivered to your door four 
times a year.
http://www.fusionauthority.com/quarterly

Archive: 
http://www.houseoffusion.com/groups/CF-Talk/message.cfm/messageid:249403
Subscription: http://www.houseoffusion.com/groups/CF-Talk/subscribe.cfm
Unsubscribe: http://www.houseoffusion.com/cf_lists/unsubscribe.cfm?user=89.70.4


Re: Development Environment Setup

2006-08-10 Thread Robertson-Ravo, Neil (RX)
In most large organisations worth their sale they will have a rock solid
security models and patch rollout / awarenes (multiple firewalls, bluecoat,
direct MSPSS acess etc). For teams who need admin access, they just hive off
from the main network and connect via another level of security - so no
direct access to the rest.







This e-mail is from Reed Exhibitions (Oriel House, 26 The Quadrant,
Richmond, Surrey, TW9 1DL, United Kingdom), a division of Reed Business,
Registered in England, Number 678540.  It contains information which is
confidential and may also be privileged.  It is for the exclusive use of the
intended recipient(s).  If you are not the intended recipient(s) please note
that any form of distribution, copying or use of this communication or the
information in it is strictly prohibited and may be unlawful.  If you have
received this communication in error please return it to the sender or call
our switchboard on +44 (0) 20 89107910.  The opinions expressed within this
communication are not necessarily those expressed by Reed Exhibitions. 
Visit our website at http://www.reedexpo.com

-Original Message-
From: Douglas Knudsen
To: CF-Talk
Sent: Thu Aug 10 06:40:59 2006
Subject: Re: Development Environment Setup

and who is to audit and ensure the developer is doing this?  Further more
shouldn't this config be something the PC support folks should setup and
maintain?  In a large organisation with 1+ PCs these are big and costly
issues, eh?  A security head might just make seemingly idiotic choices to
save their respective butts, eh?  Remember NIMDA?  At the time where I
worked there were no restrictions on IIS servers running on your desktop
PC.  oops...this helped nimda spread faster than a california wild fire.


DK

On 8/9/06, Russ [EMAIL PROTECTED] wrote:

 Then your security team is full of idiots.  Not only can you set up a
 firewall, you can configure apache/coldfusion to only listen on 127.0.0.1,
 so that no other computers can access it.

  -Original Message-
  From: Everett, Al (NIH/NIGMS) [C] [mailto:[EMAIL PROTECTED]
  Sent: Wednesday, August 09, 2006 4:01 PM
  To: CF-Talk
  Subject: RE: Development Environment Setup
 
  I'd love to do that, but we're not allowed to have servers installed
 on
  our desktop machines for security reasons.
 
  -Original Message-
  From: Oðuz_Demirkapý
  Sent: Wednesday, August 09, 2006 2:37 PM
  To: CF-Talk
  Subject: RE: Development Environment Setup
 
  Test Server   ---   SVN --- Production Server
 
|
|
Developers
 
  Test Server: Testing current status of code and deciding production
  version of code.
 
  Production Server: Deploying tested code version from SVN reposity.
 
  Developers: Every developer have their local CF installation and they
  chekin/checkout code from main SVN reposities.
 
 
  This is what we have here. :)
 
 

 



~|
Introducing the Fusion Authority Quarterly Update. 80 pages of hard-hitting,
up-to-date ColdFusion information by your peers, delivered to your door four 
times a year.
http://www.fusionauthority.com/quarterly

Archive: 
http://www.houseoffusion.com/groups/CF-Talk/message.cfm/messageid:249405
Subscription: http://www.houseoffusion.com/groups/CF-Talk/subscribe.cfm
Unsubscribe: 
http://www.houseoffusion.com/cf_lists/unsubscribe.cfm?user=11502.10531.4


Re: Development Environment Setup

2006-08-10 Thread Robertson-Ravo, Neil (RX)
Probably not idiots, just not aware of what needs to be done or maybe a cost
issue.

 




This e-mail is from Reed Exhibitions (Oriel House, 26 The Quadrant,
Richmond, Surrey, TW9 1DL, United Kingdom), a division of Reed Business,
Registered in England, Number 678540.  It contains information which is
confidential and may also be privileged.  It is for the exclusive use of the
intended recipient(s).  If you are not the intended recipient(s) please note
that any form of distribution, copying or use of this communication or the
information in it is strictly prohibited and may be unlawful.  If you have
received this communication in error please return it to the sender or call
our switchboard on +44 (0) 20 89107910.  The opinions expressed within this
communication are not necessarily those expressed by Reed Exhibitions. 
Visit our website at http://www.reedexpo.com

-Original Message-
From: Russ
To: CF-Talk
Sent: Wed Aug 09 21:10:37 2006
Subject: RE: Development Environment Setup

Then your security team is full of idiots.  Not only can you set up a
firewall, you can configure apache/coldfusion to only listen on 127.0.0.1,
so that no other computers can access it.  

 -Original Message-
 From: Everett, Al (NIH/NIGMS) [C] [mailto:[EMAIL PROTECTED]
 Sent: Wednesday, August 09, 2006 4:01 PM
 To: CF-Talk
 Subject: RE: Development Environment Setup
 
 I'd love to do that, but we're not allowed to have servers installed on
 our desktop machines for security reasons.
 
 -Original Message-
 From: Oðuz_Demirkapý
 Sent: Wednesday, August 09, 2006 2:37 PM
 To: CF-Talk
 Subject: RE: Development Environment Setup
 
 Test Server   ---   SVN --- Production Server
 
   |
   |
   Developers
 
 Test Server: Testing current status of code and deciding production
 version of code.
 
 Production Server: Deploying tested code version from SVN reposity.
 
 Developers: Every developer have their local CF installation and they
 chekin/checkout code from main SVN reposities.
 
 
 This is what we have here. :)
 
 



~|
Introducing the Fusion Authority Quarterly Update. 80 pages of hard-hitting,
up-to-date ColdFusion information by your peers, delivered to your door four 
times a year.
http://www.fusionauthority.com/quarterly

Archive: 
http://www.houseoffusion.com/groups/CF-Talk/message.cfm/messageid:249408
Subscription: http://www.houseoffusion.com/groups/CF-Talk/subscribe.cfm
Unsubscribe: 
http://www.houseoffusion.com/cf_lists/unsubscribe.cfm?user=11502.10531.4


RE: Development Environment Setup

2006-08-10 Thread Russ
SQL 2005 comes pretty secure out of the box (no external connections).
Apache/IIS can be configured to listen only on 127.0.0.1, and so can
ColdFusion (with a little xml editing).  

Best not to use IIS, use apache, keep apache config in svn, so that changes
to the config can be sent over to other developers, and you should be fine.


If all the servers are listening only on 127.0.0.1, they're not really
security holes now, are they?  Unless you have them running as a system, and
then some local Trojan exploits them, but that's pretty far fetched.  In any
case, set up local accounts with limited priviliges and run the services as
such.  

We used to run everything on a shared dev server, but it's a pain.  Things
get edited, and don't get deployed, and pretty soon your dev environment is
radically different then production.  With a local dev environment, you know
that you're the only one making changes, and you can revert everything back
to way it is on production, and you can also use branches.  

Also use Eclipse with subclipse plugin.  It makes working with subversion SO
MUCH easier then tortoise (especially the merging).  You can run it on your
QA server and use it to merge branches into the trunk, and do testing on the
QA server first, and then commit the changes to the trunk.  

Russ

 -Original Message-
 From: Robertson-Ravo, Neil (RX) [mailto:Neil.Robertson-
 [EMAIL PROTECTED]
 Sent: Thursday, August 10, 2006 3:52 AM
 To: CF-Talk
 Subject: Re: Development Environment Setup
 
 Probably not idiots, just not aware of what needs to be done or maybe a
 cost
 issue.
 
 
 
 
 
 
 This e-mail is from Reed Exhibitions (Oriel House, 26 The Quadrant,
 Richmond, Surrey, TW9 1DL, United Kingdom), a division of Reed Business,
 Registered in England, Number 678540.  It contains information which is
 confidential and may also be privileged.  It is for the exclusive use of
 the
 intended recipient(s).  If you are not the intended recipient(s) please
 note
 that any form of distribution, copying or use of this communication or the
 information in it is strictly prohibited and may be unlawful.  If you have
 received this communication in error please return it to the sender or
 call
 our switchboard on +44 (0) 20 89107910.  The opinions expressed within
 this
 communication are not necessarily those expressed by Reed Exhibitions.
 Visit our website at http://www.reedexpo.com
 
 -Original Message-
 From: Russ
 To: CF-Talk
 Sent: Wed Aug 09 21:10:37 2006
 Subject: RE: Development Environment Setup
 
 Then your security team is full of idiots.  Not only can you set up a
 firewall, you can configure apache/coldfusion to only listen on 127.0.0.1,
 so that no other computers can access it.
 
  -Original Message-
  From: Everett, Al (NIH/NIGMS) [C] [mailto:[EMAIL PROTECTED]
  Sent: Wednesday, August 09, 2006 4:01 PM
  To: CF-Talk
  Subject: RE: Development Environment Setup
 
  I'd love to do that, but we're not allowed to have servers installed
 on
  our desktop machines for security reasons.
 
  -Original Message-
  From: Oðuz_Demirkapý
  Sent: Wednesday, August 09, 2006 2:37 PM
  To: CF-Talk
  Subject: RE: Development Environment Setup
 
  Test Server ---   SVN --- Production Server
 
  |
  |
  Developers
 
  Test Server: Testing current status of code and deciding production
  version of code.
 
  Production Server: Deploying tested code version from SVN reposity.
 
  Developers: Every developer have their local CF installation and they
  chekin/checkout code from main SVN reposities.
 
 
  This is what we have here. :)
 
 
 
 
 
 

~|
Introducing the Fusion Authority Quarterly Update. 80 pages of hard-hitting,
up-to-date ColdFusion information by your peers, delivered to your door four 
times a year.
http://www.fusionauthority.com/quarterly

Archive: 
http://www.houseoffusion.com/groups/CF-Talk/message.cfm/messageid:249430
Subscription: http://www.houseoffusion.com/groups/CF-Talk/subscribe.cfm
Unsubscribe: 
http://www.houseoffusion.com/cf_lists/unsubscribe.cfm?user=11502.10531.4


RE: Development Environment Setup

2006-08-10 Thread Everett, Al \(NIH/NIGMS\) [C]
 Then your security team is full of idiots.

No comment.

I wish to remain gainfully employed so I just deal with it. I have
pointed out several times that this prevents from using some of the
power of source versioning, like branching, and interferes with unit
testing, among other issues.

~|
Introducing the Fusion Authority Quarterly Update. 80 pages of hard-hitting,
up-to-date ColdFusion information by your peers, delivered to your door four 
times a year.
http://www.fusionauthority.com/quarterly

Archive: 
http://www.houseoffusion.com/groups/CF-Talk/message.cfm/messageid:249462
Subscription: http://www.houseoffusion.com/groups/CF-Talk/subscribe.cfm
Unsubscribe: http://www.houseoffusion.com/cf_lists/unsubscribe.cfm?user=89.70.4


Development Environment Setup

2006-08-09 Thread Neil Middleton
Hi guys,

Question on how best to setup our development environment.  I know it's been
asked before, I would like your ideas on our specific setup:

Currently we maintain several applications under many websites, on a single
development server (CFMX7 and SQL2000).  Developers work direct on the
shared development server via VSS (do some work, save it, check it in to see
if it works...very time consuming).  Releases are then done by the tech
support guys, who get sent a list of things to push to test (which is
currently a manual task).  Developers have no access to SQL Admin or CF
Admin.

As you can guess, this isn't the best, and I personally would like to see us
using a better source control system (Subversion?).  I would also the like
the source control and release process to be a lot more transparent in the
overall process.

I have seen mentions of people having devs running their own instances of
CF/SQL, but how the hell do you keep these up to date without creating a
logistical nightmare (i.e making sure every developer is in sync with both
code and external requirements such as IIS setup?)

Cheers in advance..

-- 
Neil Middleton

Visit feed-squirrel.com


~|
Introducing the Fusion Authority Quarterly Update. 80 pages of hard-hitting,
up-to-date ColdFusion information by your peers, delivered to your door four 
times a year.
http://www.fusionauthority.com/quarterly

Archive: 
http://www.houseoffusion.com/groups/CF-Talk/message.cfm/messageid:249295
Subscription: http://www.houseoffusion.com/groups/CF-Talk/subscribe.cfm
Unsubscribe: 
http://www.houseoffusion.com/cf_lists/unsubscribe.cfm?user=11502.10531.4


RE: Development Environment Setup

2006-08-09 Thread Konopka, David
You could create individual user shares on a development web server. 

Each developer would check out code to his/her user share to code with.

___
David Konopka
Wharton Computing and Information Technology 




-Original Message-
From: Neil Middleton [mailto:[EMAIL PROTECTED] 
Sent: Wednesday, August 09, 2006 9:20 AM
To: CF-Talk
Subject: Development Environment Setup

Hi guys,

Question on how best to setup our development environment.  I know it's
been asked before, I would like your ideas on our specific setup:

Currently we maintain several applications under many websites, on a
single development server (CFMX7 and SQL2000).  Developers work direct
on the shared development server via VSS (do some work, save it, check
it in to see if it works...very time consuming).  Releases are then done
by the tech support guys, who get sent a list of things to push to test
(which is currently a manual task).  Developers have no access to SQL
Admin or CF Admin.

As you can guess, this isn't the best, and I personally would like to
see us using a better source control system (Subversion?).  I would also
the like the source control and release process to be a lot more
transparent in the overall process.

I have seen mentions of people having devs running their own instances
of CF/SQL, but how the hell do you keep these up to date without
creating a logistical nightmare (i.e making sure every developer is in
sync with both code and external requirements such as IIS setup?)

Cheers in advance..

--
Neil Middleton

Visit feed-squirrel.com




~|
Introducing the Fusion Authority Quarterly Update. 80 pages of hard-hitting,
up-to-date ColdFusion information by your peers, delivered to your door four 
times a year.
http://www.fusionauthority.com/quarterly

Archive: 
http://www.houseoffusion.com/groups/CF-Talk/message.cfm/messageid:249335
Subscription: http://www.houseoffusion.com/groups/CF-Talk/subscribe.cfm
Unsubscribe: http://www.houseoffusion.com/cf_lists/unsubscribe.cfm?user=89.70.4


RE: Development Environment Setup

2006-08-09 Thread O�uz_Demirkap
Test Server ---   SVN --- Production Server

|   
|
Developers 

Test Server: Testing current status of code and deciding production version
of code.

Production Server: Deploying tested code version from SVN reposity.

Developers: Every developer have their local CF installation and they
chekin/checkout code from main SVN reposities.


This is what we have here. :)


Oðuz Demirkapý




-Original Message-
From: Konopka, David [mailto:[EMAIL PROTECTED] 
Sent: Mittwoch, 9. August 2006 20:19
To: CF-Talk
Subject: RE: Development Environment Setup

You could create individual user shares on a development web server. 

Each developer would check out code to his/her user share to code with.

___
David Konopka
Wharton Computing and Information Technology 




-Original Message-
From: Neil Middleton [mailto:[EMAIL PROTECTED] 
Sent: Wednesday, August 09, 2006 9:20 AM
To: CF-Talk
Subject: Development Environment Setup

Hi guys,

Question on how best to setup our development environment.  I know it's
been asked before, I would like your ideas on our specific setup:

Currently we maintain several applications under many websites, on a
single development server (CFMX7 and SQL2000).  Developers work direct
on the shared development server via VSS (do some work, save it, check
it in to see if it works...very time consuming).  Releases are then done
by the tech support guys, who get sent a list of things to push to test
(which is currently a manual task).  Developers have no access to SQL
Admin or CF Admin.

As you can guess, this isn't the best, and I personally would like to
see us using a better source control system (Subversion?).  I would also
the like the source control and release process to be a lot more
transparent in the overall process.

I have seen mentions of people having devs running their own instances
of CF/SQL, but how the hell do you keep these up to date without
creating a logistical nightmare (i.e making sure every developer is in
sync with both code and external requirements such as IIS setup?)

Cheers in advance..

--
Neil Middleton

Visit feed-squirrel.com






~|
Introducing the Fusion Authority Quarterly Update. 80 pages of hard-hitting,
up-to-date ColdFusion information by your peers, delivered to your door four 
times a year.
http://www.fusionauthority.com/quarterly

Archive: 
http://www.houseoffusion.com/groups/CF-Talk/message.cfm/messageid:249340
Subscription: http://www.houseoffusion.com/groups/CF-Talk/subscribe.cfm
Unsubscribe: 
http://www.houseoffusion.com/cf_lists/unsubscribe.cfm?user=11502.10531.4


RE: Development Environment Setup

2006-08-09 Thread Richard Kroll
I feel your pain and have recently worked through many of the problems
that you are currently struggling with.  This is the solution that we
found works for us and is in no way best practice or the right way,
but hey, it works for us with 20 developers all working on the same set
of code!  

We decided to have each developer run a local copy of CF under apache as
well as installing TortoiseSVN to interact with SVN (Subversion).  Our
IT guys helped me put together an installer package that had the apache
conf files as well as all the necessary installers.  We wrote a few CF
files that used the admin API to create all the necessary datasources
etc.  This enables us to bring a computer from start to configured in
about an hour.

We have two environments, QA and production that we deploy to.  When
we are ready to QA a release, we create a branch from the trunk and have
our QA server switch to that branch for testing.  If there are any
problems, we update the trunk and merge those changes into the release
branch.  Once this branch is ready for deployment onto our live servers
we simply have the live servers switch to the new release branch.

Currently we are not using many automated processes to accomplish this
(outside of SVN) but I'm looking into ANT and CruiseControl as I've
heard really great things about both for automated deployments.

In regards to your question about the logistical nightmare of keeping
all developers in sync...well SVN handles all of it from a code
perspective.  When a developer attempts to commit changes to the
repository, they are notified that their local copy is out of date and
they must sync with the server prior to any commits.  On the data side,
we have data environments (development, qa, live) and all developers
have their CF datasources pointed to our dev DB server.

HTH

Rich

-Original Message-
From: Konopka, David [mailto:[EMAIL PROTECTED] 
Sent: Wednesday, August 09, 2006 2:19 PM
To: CF-Talk
Subject: RE: Development Environment Setup

You could create individual user shares on a development web server. 

Each developer would check out code to his/her user share to code with.

___
David Konopka
Wharton Computing and Information Technology 




-Original Message-
From: Neil Middleton [mailto:[EMAIL PROTECTED] 
Sent: Wednesday, August 09, 2006 9:20 AM
To: CF-Talk
Subject: Development Environment Setup

Hi guys,

Question on how best to setup our development environment.  I know it's
been asked before, I would like your ideas on our specific setup:

Currently we maintain several applications under many websites, on a
single development server (CFMX7 and SQL2000).  Developers work direct
on the shared development server via VSS (do some work, save it, check
it in to see if it works...very time consuming).  Releases are then done
by the tech support guys, who get sent a list of things to push to test
(which is currently a manual task).  Developers have no access to SQL
Admin or CF Admin.

As you can guess, this isn't the best, and I personally would like to
see us using a better source control system (Subversion?).  I would also
the like the source control and release process to be a lot more
transparent in the overall process.

I have seen mentions of people having devs running their own instances
of CF/SQL, but how the hell do you keep these up to date without
creating a logistical nightmare (i.e making sure every developer is in
sync with both code and external requirements such as IIS setup?)

Cheers in advance..

--
Neil Middleton

Visit feed-squirrel.com






~|
Introducing the Fusion Authority Quarterly Update. 80 pages of hard-hitting,
up-to-date ColdFusion information by your peers, delivered to your door four 
times a year.
http://www.fusionauthority.com/quarterly

Archive: 
http://www.houseoffusion.com/groups/CF-Talk/message.cfm/messageid:249343
Subscription: http://www.houseoffusion.com/groups/CF-Talk/subscribe.cfm
Unsubscribe: http://www.houseoffusion.com/cf_lists/unsubscribe.cfm?user=89.70.4


RE: Development Environment Setup

2006-08-09 Thread Russ
We do some thing similar, except we have developers developing in branches,
and then it's merged into the trunk working copy on QA server, and if it
passes testing, then it's committed to the trunk and deployed to production.


We don't have any notion of releases, instead we deploy different features
for different clients daily.  

Russ

 -Original Message-
 From: Richard Kroll [mailto:[EMAIL PROTECTED]
 Sent: Wednesday, August 09, 2006 2:41 PM
 To: CF-Talk
 Subject: RE: Development Environment Setup
 
 I feel your pain and have recently worked through many of the problems
 that you are currently struggling with.  This is the solution that we
 found works for us and is in no way best practice or the right way,
 but hey, it works for us with 20 developers all working on the same set
 of code!
 
 We decided to have each developer run a local copy of CF under apache as
 well as installing TortoiseSVN to interact with SVN (Subversion).  Our
 IT guys helped me put together an installer package that had the apache
 conf files as well as all the necessary installers.  We wrote a few CF
 files that used the admin API to create all the necessary datasources
 etc.  This enables us to bring a computer from start to configured in
 about an hour.
 
 We have two environments, QA and production that we deploy to.  When
 we are ready to QA a release, we create a branch from the trunk and have
 our QA server switch to that branch for testing.  If there are any
 problems, we update the trunk and merge those changes into the release
 branch.  Once this branch is ready for deployment onto our live servers
 we simply have the live servers switch to the new release branch.
 
 Currently we are not using many automated processes to accomplish this
 (outside of SVN) but I'm looking into ANT and CruiseControl as I've
 heard really great things about both for automated deployments.
 
 In regards to your question about the logistical nightmare of keeping
 all developers in sync...well SVN handles all of it from a code
 perspective.  When a developer attempts to commit changes to the
 repository, they are notified that their local copy is out of date and
 they must sync with the server prior to any commits.  On the data side,
 we have data environments (development, qa, live) and all developers
 have their CF datasources pointed to our dev DB server.
 
 HTH
 
 Rich
 
 -Original Message-
 From: Konopka, David [mailto:[EMAIL PROTECTED]
 Sent: Wednesday, August 09, 2006 2:19 PM
 To: CF-Talk
 Subject: RE: Development Environment Setup
 
 You could create individual user shares on a development web server.
 
 Each developer would check out code to his/her user share to code with.
 
 ___
 David Konopka
 Wharton Computing and Information Technology
 
 
 
 
 -Original Message-
 From: Neil Middleton [mailto:[EMAIL PROTECTED]
 Sent: Wednesday, August 09, 2006 9:20 AM
 To: CF-Talk
 Subject: Development Environment Setup
 
 Hi guys,
 
 Question on how best to setup our development environment.  I know it's
 been asked before, I would like your ideas on our specific setup:
 
 Currently we maintain several applications under many websites, on a
 single development server (CFMX7 and SQL2000).  Developers work direct
 on the shared development server via VSS (do some work, save it, check
 it in to see if it works...very time consuming).  Releases are then done
 by the tech support guys, who get sent a list of things to push to test
 (which is currently a manual task).  Developers have no access to SQL
 Admin or CF Admin.
 
 As you can guess, this isn't the best, and I personally would like to
 see us using a better source control system (Subversion?).  I would also
 the like the source control and release process to be a lot more
 transparent in the overall process.
 
 I have seen mentions of people having devs running their own instances
 of CF/SQL, but how the hell do you keep these up to date without
 creating a logistical nightmare (i.e making sure every developer is in
 sync with both code and external requirements such as IIS setup?)
 
 Cheers in advance..
 
 --
 Neil Middleton
 
 Visit feed-squirrel.com
 
 
 
 
 
 
 

~|
Introducing the Fusion Authority Quarterly Update. 80 pages of hard-hitting,
up-to-date ColdFusion information by your peers, delivered to your door four 
times a year.
http://www.fusionauthority.com/quarterly

Archive: 
http://www.houseoffusion.com/groups/CF-Talk/message.cfm/messageid:249348
Subscription: http://www.houseoffusion.com/groups/CF-Talk/subscribe.cfm
Unsubscribe: 
http://www.houseoffusion.com/cf_lists/unsubscribe.cfm?user=11502.10531.4


RE: Development Environment Setup

2006-08-09 Thread Everett, Al \(NIH/NIGMS\) [C]
I'd love to do that, but we're not allowed to have servers installed on our 
desktop machines for security reasons.

-Original Message-
From: Oðuz_Demirkapý 
Sent: Wednesday, August 09, 2006 2:37 PM
To: CF-Talk
Subject: RE: Development Environment Setup

Test Server ---   SVN --- Production Server

|   
|
Developers 

Test Server: Testing current status of code and deciding production version of 
code.

Production Server: Deploying tested code version from SVN reposity.

Developers: Every developer have their local CF installation and they 
chekin/checkout code from main SVN reposities.


This is what we have here. :)

~|
Introducing the Fusion Authority Quarterly Update. 80 pages of hard-hitting,
up-to-date ColdFusion information by your peers, delivered to your door four 
times a year.
http://www.fusionauthority.com/quarterly

Archive: 
http://www.houseoffusion.com/groups/CF-Talk/message.cfm/messageid:249354
Subscription: http://www.houseoffusion.com/groups/CF-Talk/subscribe.cfm
Unsubscribe: http://www.houseoffusion.com/cf_lists/unsubscribe.cfm?user=89.70.4


RE: Development Environment Setup

2006-08-09 Thread Russ
Then your security team is full of idiots.  Not only can you set up a
firewall, you can configure apache/coldfusion to only listen on 127.0.0.1,
so that no other computers can access it.  

 -Original Message-
 From: Everett, Al (NIH/NIGMS) [C] [mailto:[EMAIL PROTECTED]
 Sent: Wednesday, August 09, 2006 4:01 PM
 To: CF-Talk
 Subject: RE: Development Environment Setup
 
 I'd love to do that, but we're not allowed to have servers installed on
 our desktop machines for security reasons.
 
 -Original Message-
 From: Oðuz_Demirkapý
 Sent: Wednesday, August 09, 2006 2:37 PM
 To: CF-Talk
 Subject: RE: Development Environment Setup
 
 Test Server   ---   SVN --- Production Server
 
   |
   |
   Developers
 
 Test Server: Testing current status of code and deciding production
 version of code.
 
 Production Server: Deploying tested code version from SVN reposity.
 
 Developers: Every developer have their local CF installation and they
 chekin/checkout code from main SVN reposities.
 
 
 This is what we have here. :)
 
 

~|
Introducing the Fusion Authority Quarterly Update. 80 pages of hard-hitting,
up-to-date ColdFusion information by your peers, delivered to your door four 
times a year.
http://www.fusionauthority.com/quarterly

Archive: 
http://www.houseoffusion.com/groups/CF-Talk/message.cfm/messageid:249355
Subscription: http://www.houseoffusion.com/groups/CF-Talk/subscribe.cfm
Unsubscribe: 
http://www.houseoffusion.com/cf_lists/unsubscribe.cfm?user=11502.10531.4


RE: Development Environment Setup

2006-08-09 Thread Lincoln Milner
We're currently switching our model.

Current old way of doing it is to develop locally with Apache and CF to a MySQL 
or Oracle DB.  Then push changes to QA for review.  Developers use SVN to 
maintain code repositories for version/history.  Once QA is passed, changes 
FTPed to production.  No release schedule, it's a do it as you get approval.

Our new way eliminates the local development environment.  We have one web 
server for dev, and DW (our chosen IDE) is set up to maintain a local copy for 
editing and to put files via SFTP.  So you FTP changes when you're ready to 
look at them in development, but can also check-in to SVN from your local copy. 
 QA and production are the same, but I'd love to implement releases 
(administrative nightmare tracking what bits of code just got approved!).

Not ideal, and if DW could get SVN integration, so much the better, but it 
works for us, and eliminates the overhead of maintaining several versions of CF 
on developers' machines.

Cheers!
Lincoln 

-Original Message-
From: Everett, Al (NIH/NIGMS) [C] [mailto:[EMAIL PROTECTED] 
Sent: Wednesday, August 09, 2006 4:01 PM
To: CF-Talk
Subject: RE: Development Environment Setup

I'd love to do that, but we're not allowed to have servers installed on our 
desktop machines for security reasons.

-Original Message-
From: Oðuz_Demirkapý
Sent: Wednesday, August 09, 2006 2:37 PM
To: CF-Talk
Subject: RE: Development Environment Setup

Test Server ---   SVN --- Production Server

|   
|
Developers 

Test Server: Testing current status of code and deciding production version of 
code.

Production Server: Deploying tested code version from SVN reposity.

Developers: Every developer have their local CF installation and they 
chekin/checkout code from main SVN reposities.


This is what we have here. :)



~|
Introducing the Fusion Authority Quarterly Update. 80 pages of hard-hitting,
up-to-date ColdFusion information by your peers, delivered to your door four 
times a year.
http://www.fusionauthority.com/quarterly

Archive: 
http://www.houseoffusion.com/groups/CF-Talk/message.cfm/messageid:249357
Subscription: http://www.houseoffusion.com/groups/CF-Talk/subscribe.cfm
Unsubscribe: http://www.houseoffusion.com/cf_lists/unsubscribe.cfm?user=89.70.4


Re: Development Environment Setup

2006-08-09 Thread Neil Middleton
It would appear everyone has a different way of doing things, even though we
are all essentially trying to achieve the same thing.

I've blogged this topic to try and get some feedback on this from other
people and see if there's any general consensus.  Feel free to mention it on
your own blogs etc.  The more replies the more useful it is.

http://www.feed-squirrel.com/blog/index.cfm/2006/8/9/How-do-you-do-yours

Cheers

Neil

BTW, Firefox 2 spell check rocks.


On 8/9/06, Lincoln Milner [EMAIL PROTECTED] wrote:

 We're currently switching our model.

 Current old way of doing it is to develop locally with Apache and CF to a
 MySQL or Oracle DB.  Then push changes to QA for review.  Developers use SVN
 to maintain code repositories for version/history.  Once QA is passed,
 changes FTPed to production.  No release schedule, it's a do it as you get
 approval.

 Our new way eliminates the local development environment.  We have one web
 server for dev, and DW (our chosen IDE) is set up to maintain a local copy
 for editing and to put files via SFTP.  So you FTP changes when you're ready
 to look at them in development, but can also check-in to SVN from your local
 copy.  QA and production are the same, but I'd love to implement releases
 (administrative nightmare tracking what bits of code just got approved!).

 Not ideal, and if DW could get SVN integration, so much the better, but it
 works for us, and eliminates the overhead of maintaining several versions of
 CF on developers' machines.

 Cheers!
 Lincoln

 -Original Message-
 From: Everett, Al (NIH/NIGMS) [C] [mailto:[EMAIL PROTECTED]
 Sent: Wednesday, August 09, 2006 4:01 PM
 To: CF-Talk
 Subject: RE: Development Environment Setup

 I'd love to do that, but we're not allowed to have servers installed on
 our desktop machines for security reasons.

 -Original Message-
 From: Oðuz_Demirkapý
 Sent: Wednesday, August 09, 2006 2:37 PM
 To: CF-Talk
 Subject: RE: Development Environment Setup

 Test Server ---   SVN --- Production Server

 |
 |
 Developers

 Test Server: Testing current status of code and deciding production
 version of code.

 Production Server: Deploying tested code version from SVN reposity.

 Developers: Every developer have their local CF installation and they
 chekin/checkout code from main SVN reposities.


 This is what we have here. :)



 

~|
Introducing the Fusion Authority Quarterly Update. 80 pages of hard-hitting,
up-to-date ColdFusion information by your peers, delivered to your door four 
times a year.
http://www.fusionauthority.com/quarterly

Archive: 
http://www.houseoffusion.com/groups/CF-Talk/message.cfm/messageid:249360
Subscription: http://www.houseoffusion.com/groups/CF-Talk/subscribe.cfm
Unsubscribe: http://www.houseoffusion.com/cf_lists/unsubscribe.cfm?user=89.70.4


Re: Development Environment Setup

2006-08-09 Thread Denny Valliant
On 8/9/06, Lincoln Milner [EMAIL PROTECTED] wrote:

 We're currently switching our model.

 Current old way of doing it is to develop locally with Apache and CF to a
 MySQL or Oracle DB.  Then push changes to QA for review.  Developers use SVN
 to maintain code repositories for version/history.  Once QA is passed,
 changes FTPed to production.  No release schedule, it's a do it as you get
 approval.

 Our new way eliminates the local development environment.  We have one web
 server for dev, and DW (our chosen IDE) is set up to maintain a local copy
 for editing and to put files via SFTP.  So you FTP changes when you're ready
 to look at them in development, but can also check-in to SVN from your local
 copy.  QA and production are the same, but I'd love to implement releases
 (administrative nightmare tracking what bits of code just got approved!).


Hey Lincoln, let us know how this goes for you.

I've always leaned toward each dev having a local setup, database y todo.

Mostly because of bad experiences sharing an instance.  Partly because
it gives the developer a sense of freedom, knowing they can't possibly mess
up anyone else.  Rouge query? No biggie, just copy the database again.
Wanna really dig into the code and tweak it around? Go for it!

I'm the only developer working on databases of a size that makes it a
little harder to keep in sync. Honestly, for most stuff, it's enough to
just have some representative data.  Hardly do we need the real latest
and greatest, unless there's a problem that's hard to reproduce.

I'd really love to get into the whole unit testing whatnot, maybe keeping
bits of XML representing the DB around, tie it all in to ANT scripts or
whatnot, automating as much as possible...

One of the coolest things about SVN is the commit messages.  You
can use them, and tags, to create releases, with change logs even,
and if you've got a bug tracker, link bugs to code commits!  Sorta killing
two birds with one stone.  It does help to have a commit message
template that folks follow...

I am kind of thinking Virtual Machines are pretty cool, you can have
an image of the entire setup (Apache, CF, DB) and have a new
developer up and running in as long as it takes to copy 2 gigs.

Or, if you had a super beefy server, try some of those essentially
per user VM setups...

A lot probably depends on how reliable the local network is too...

I kinda miss the days of well, the network is down, let's all go home...
:D


~|
Introducing the Fusion Authority Quarterly Update. 80 pages of hard-hitting,
up-to-date ColdFusion information by your peers, delivered to your door four 
times a year.
http://www.fusionauthority.com/quarterly

Archive: 
http://www.houseoffusion.com/groups/CF-Talk/message.cfm/messageid:249397
Subscription: http://www.houseoffusion.com/groups/CF-Talk/subscribe.cfm
Unsubscribe: http://www.houseoffusion.com/cf_lists/unsubscribe.cfm?user=89.70.4


Re: Development Environment Setup

2006-08-09 Thread Douglas Knudsen
and who is to audit and ensure the developer is doing this?  Further more
shouldn't this config be something the PC support folks should setup and
maintain?  In a large organisation with 1+ PCs these are big and costly
issues, eh?  A security head might just make seemingly idiotic choices to
save their respective butts, eh?  Remember NIMDA?  At the time where I
worked there were no restrictions on IIS servers running on your desktop
PC.  oops...this helped nimda spread faster than a california wild fire.


DK

On 8/9/06, Russ [EMAIL PROTECTED] wrote:

 Then your security team is full of idiots.  Not only can you set up a
 firewall, you can configure apache/coldfusion to only listen on 127.0.0.1,
 so that no other computers can access it.

  -Original Message-
  From: Everett, Al (NIH/NIGMS) [C] [mailto:[EMAIL PROTECTED]
  Sent: Wednesday, August 09, 2006 4:01 PM
  To: CF-Talk
  Subject: RE: Development Environment Setup
 
  I'd love to do that, but we're not allowed to have servers installed
 on
  our desktop machines for security reasons.
 
  -Original Message-
  From: Oðuz_Demirkapý
  Sent: Wednesday, August 09, 2006 2:37 PM
  To: CF-Talk
  Subject: RE: Development Environment Setup
 
  Test Server   ---   SVN --- Production Server
 
|
|
Developers
 
  Test Server: Testing current status of code and deciding production
  version of code.
 
  Production Server: Deploying tested code version from SVN reposity.
 
  Developers: Every developer have their local CF installation and they
  chekin/checkout code from main SVN reposities.
 
 
  This is what we have here. :)
 
 

 

~|
Introducing the Fusion Authority Quarterly Update. 80 pages of hard-hitting,
up-to-date ColdFusion information by your peers, delivered to your door four 
times a year.
http://www.fusionauthority.com/quarterly

Archive: 
http://www.houseoffusion.com/groups/CF-Talk/message.cfm/messageid:249401
Subscription: http://www.houseoffusion.com/groups/CF-Talk/subscribe.cfm
Unsubscribe: http://www.houseoffusion.com/cf_lists/unsubscribe.cfm?user=89.70.4