 |
BorlandTalk.com Borland discussion newsgroups
|
| View previous topic :: View next topic |
| Author |
Message |
Davids Guest
|
Posted: Fri Jul 16, 2004 7:24 pm Post subject: suggestions for "freezing" a development snapshot |
|
|
I'm not sure where to post this, but I've been asked to do something referred to
as "freezing" a (Delphi) development snapshot. That is, we're getting ready to
release some software, and we need to do something to ensure that if we ever
need to work on this release again, then we can re-load the entire environment
as it is right now. Some companies do that by simply prohibiting the addition
of any components or anything except a narrow set. But still, they can be
upgraded over time, and those upgrades can play havoc with programs built with
previous versions. There's also the problem of upgrading Delphi itself.
Are there any sections in books, or articles, that discuss this sort of thing?
The obvious thing is to do a backup of an entire installation, but that requires
a spare machine to reload (given limitations of how things interact with the
Windows registry, etc).
Any suggestions, pointers, tips, etc are welcome.
TIA
-David
|
|
| Back to top |
|
 |
Des O'Toole Guest
|
Posted: Fri Jul 16, 2004 7:47 pm Post subject: Re: suggestions for "freezing" a development snapshot |
|
|
You could use VMWare or VirtualPc to create a complete, reloadable copy of
your current working environment.
Des
"Davids" <nowhere (AT) nowthere (DOT) com> wrote
| Quote: | I'm not sure where to post this, but I've been asked to do something
referred to
as "freezing" a (Delphi) development snapshot. That is, we're getting
ready to
release some software, and we need to do something to ensure that if we
ever
need to work on this release again, then we can re-load the entire
environment
as it is right now. Some companies do that by simply prohibiting the
addition
of any components or anything except a narrow set. But still, they can be
upgraded over time, and those upgrades can play havoc with programs built
with
previous versions. There's also the problem of upgrading Delphi itself.
Are there any sections in books, or articles, that discuss this sort of
thing?
The obvious thing is to do a backup of an entire installation, but that
requires
a spare machine to reload (given limitations of how things interact with
the
Windows registry, etc).
Any suggestions, pointers, tips, etc are welcome.
TIA
-David
|
|
|
| Back to top |
|
 |
Craig Stuntz [TeamB] Guest
|
Posted: Fri Jul 16, 2004 7:51 pm Post subject: Re: suggestions for "freezing" a development snapshot |
|
|
Davids wrote:
| Quote: | I'm not sure where to post this, but I've been asked to do something
referred to as "freezing" a (Delphi) development snapshot. That is,
we're getting ready to release some software, and we need to do
something to ensure that if we ever need to work on this release
again, then we can re-load the entire environment as it is right now.
|
You should put the entire source base -- including VCL and
third-components and the dcc32 command-line compiler itself -- into
your version control system and then create a branch for the "frozen"
release.
If you ever need to rebuild, just check out everything from the
branch. It's a good idea to make your "regular" build process do the
same thing.
-Craig
--
Craig Stuntz [TeamB] . Vertex Systems Corp. . Columbus, OH
Delphi/InterBase Weblog : http://blogs.teamb.com/craigstuntz
Useful articles about InterBase development:
http://blogs.teamb.com/craigstuntz/category/21.aspx
|
|
| Back to top |
|
 |
Dan Barclay Guest
|
Posted: Fri Jul 16, 2004 7:56 pm Post subject: Re: suggestions for "freezing" a development snapshot |
|
|
A good version control system is the most useful way. But, if you're
concerned about the development environment itself (including stuff
installed on the machine), you could always use DriveImage or an equivalent
to capture a bit-image of the drives. Burn them to CD or DVD and restore if
you need.
"Davids" <nowhere (AT) nowthere (DOT) com> wrote
| Quote: | I'm not sure where to post this, but I've been asked to do something
referred to
as "freezing" a (Delphi) development snapshot. That is, we're getting
ready to
release some software, and we need to do something to ensure that if we
ever
need to work on this release again, then we can re-load the entire
environment
as it is right now. Some companies do that by simply prohibiting the
addition
of any components or anything except a narrow set. But still, they can be
upgraded over time, and those upgrades can play havoc with programs built
with
previous versions. There's also the problem of upgrading Delphi itself.
Are there any sections in books, or articles, that discuss this sort of
thing?
The obvious thing is to do a backup of an entire installation, but that
requires
a spare machine to reload (given limitations of how things interact with
the
Windows registry, etc).
Any suggestions, pointers, tips, etc are welcome.
TIA
-David
|
|
|
| Back to top |
|
 |
mamcx Guest
|
Posted: Fri Jul 16, 2004 8:01 pm Post subject: Re: suggestions for "freezing" a development snapshot |
|
|
My brutal suggestion, bullet-proof aproach: Do a ghost backup.
My second suggestion: Copy all thirdyparty installer, backups, copy the
delphi registry and do a backup of the full project(not forget include
the things like images, documentation, etc....).
In the other hand, always have a salesman ready to say " I can give you
a cheap upgrade" ...if all fails ;)
|
|
| Back to top |
|
 |
Phil Shrimpton Guest
|
Posted: Fri Jul 16, 2004 8:20 pm Post subject: Re: suggestions for "freezing" a development snapshot |
|
|
In article <40F82B77.3DD504FE (AT) nowthere (DOT) com>, [email]nowhere (AT) nowthere (DOT) com[/email]
says...
Hi,
| Quote: | I'm not sure where to post this, but I've been asked to do something referred to
as "freezing" a (Delphi) development snapshot.
|
Just 'tag' all the code in your VCS, or am I missing something?
Phil
--
Discover a lost art - play Marbles
May 2004
www.marillion.com
|
|
| Back to top |
|
 |
TObject Guest
|
Posted: Fri Jul 16, 2004 8:37 pm Post subject: Re: suggestions for "freezing" a development snapshot |
|
|
Interesting question.
We are talking about development environment here, not source code.
One thing I know is that if you restore a frozen Delphi 8 environment
on a different computer, you have to go through the registration process
again. And you only have so many registrations, before you have to call
Borland and beg for more.
It would be nice to know what part of the system Delphi registration
is tied to. If only the hard drive, then, perhaps, it would be possible
to use removable hard-drives for different projects. However, I am sure
that it's got to be more than just a hard drive. In fact I know,
that Delphi 8 registration is NOT tied to a particular hard drive,
but rather to something else in the system.
Another solution could be just putting the whole computer with
a frozen project in storage. May not be a very viable solution.
Or, maybe, make sure that restore is always done to the same computers
where the freeze was originally performed.
As you can see, I am not entirely happy with forced registrations.
As far as how to copy the whole Development environment,
including OS from an NT or Windows 2000 computer (I haven't tried XP),
that's easy. Just load Windows installed on a different partition,
and use the scopy command, like this:
scopy e:*.* g: /o /a /s
g: should be an empty drive, used for "freezing"
e: is your source drive with the development environment.
Note: do not use a Hard Drive (or just a Hard Drive) for long storage.
Always make a backup copy on Tape or Optical Drive or some other
backup media, that won't go bad if you accidentally drop it on the floor.
|
|
| Back to top |
|
 |
Kevin Powick Guest
|
Posted: Fri Jul 16, 2004 10:00 pm Post subject: Re: suggestions for "freezing" a development snapshot |
|
|
In article <40f830e8 (AT) newsgroups (DOT) borland.com>, "Des O'Toole" <des>
says...
| Quote: | You could use VMWare or VirtualPc to create a complete, reloadable copy of
your current working environment.
|
Pretty much the best suggestion because it allows you to continue using
your workstation or other virtual machines.
--
Kevin Powick
|
|
| Back to top |
|
 |
JohnE Guest
|
Posted: Fri Jul 16, 2004 10:02 pm Post subject: Re: suggestions for "freezing" a development snapshot |
|
|
| Quote: | Just 'tag' all the code in your VCS, or am I missing something?
|
I think he wants to freeze his entire environment.. OS, IDE etc...
John
|
|
| Back to top |
|
 |
Lauchlan M Guest
|
Posted: Fri Jul 16, 2004 10:29 pm Post subject: Re: suggestions for "freezing" a development snapshot |
|
|
| Quote: | You could use VMWare or VirtualPc to create a complete, reloadable copy
of
your current working environment.
Pretty much the best suggestion because it allows you to continue using
your workstation or other virtual machines.
|
I third this.
Also, you could check this whole virtual PC into a source control program if
you really wanted to (although I don't see too much point in that), thereby
combining this solution with the other solution suggested in this thread.
If you have a reasonable size hard disk though I don't see the point - just
leave your virtual environments set up and ready to go.
Lauchlan M.
|
|
| Back to top |
|
 |
Des O'Toole Guest
|
Posted: Fri Jul 16, 2004 11:14 pm Post subject: Re: suggestions for "freezing" a development snapshot |
|
|
"Kevin Powick" <nospam (AT) nomail (DOT) com> wrote
| Quote: | In article <40f830e8 (AT) newsgroups (DOT) borland.com>, "Des O'Toole"
says...
You could use VMWare or VirtualPc to create a complete, reloadable copy
of
your current working environment.
Pretty much the best suggestion because it allows you to continue using
your workstation or other virtual machines.
|
I probably should have also added that following this route, he would then
be free to re-use his created environment on any computer that can run
VMWare/VirtualPc. This means he is also protected against hardware/OS
upgrades.
The only downsides are extra software costs and the fact that he would have
to recreate his initial environment.
Des
|
|
| Back to top |
|
 |
Oliver Townshend Guest
|
Posted: Fri Jul 16, 2004 11:15 pm Post subject: Re: suggestions for "freezing" a development snapshot |
|
|
| Quote: | The obvious thing is to do a backup of an entire installation, but that
requires
a spare machine to reload (given limitations of how things interact with
the
Windows registry, etc).
|
Buy VMWare (or Virtual PC) and create a Virtual Machine. Backup it up to a
CD.
Oliver Townshend
|
|
| Back to top |
|
 |
I R T Guest
|
Posted: Sat Jul 17, 2004 2:13 am Post subject: Re: suggestions for "freezing" a development snapshot |
|
|
How about creating a vmware image and then loading and running it under vmware when you need to ?
|
|
| Back to top |
|
 |
Thomas Mueller Guest
|
Posted: Sat Jul 17, 2004 10:54 am Post subject: VMware |
|
|
Hi,
Davids wrote:
| Quote: | we're getting
ready to release some software, and we need to do something to ensure that
if we ever need to work on this release again, then we can re-load the
entire environment as it is right now.
|
We have successfully used VMware for this. Actually we also do all our
development in virtual machines from the start so there is no problem of
creating a development environment in a virtual machine at release time
since it already exists and only needs to be backuped. Unfortunately many
of our images have become too large to fit on a cdrom so now we burn them
to a dvd as part of our release process.
An added benefit is that you don't "pollute" your development environment
with all that stuff that usually needs to be installed on a work PC like
email client, web browser, office applications etc.. (In my case this goes
into yet another virtual machine so I can just move it to a new PC without
installing anything but VMware on that box.)
The only drawback is that you need quite a powerfull box to host all these
virtual machines and still get decent performance. 1 gig of memory is a
must, if you use more than 2 virtual machines.
regards
twm
|
|
| Back to top |
|
 |
Vincent Parrett (Atozed S Guest
|
Posted: Sat Jul 17, 2004 11:34 pm Post subject: Re: suggestions for "freezing" a development snapshot |
|
|
"Davids" <nowhere (AT) nowthere (DOT) com> wrote
| Quote: | I'm not sure where to post this, but I've been asked to do something
referred to
as "freezing" a (Delphi) development snapshot.
[snip]
Are there any sections in books, or articles, that discuss this sort of
thing? |
I wrote about a good one on my blog a while back :
http://blogs.atozed.com/vincent/archive/2004/05/30/170.aspx
Software Configuration Management Patterns - Effective Teamwork, Practial
Integration - by Stephen P. Berczuk & Brad Appleton.
Chapter 10 - "Third Party Codeline" has some good advice on how to deal with
third party source code in your vcs.
In addition to the other suggestions for VMWare (which I also use and
recommend), you should make sure you should make sure you have a solid
version control system and know how to use it's branching facilities
properly.
<shamelessplug>
Our automated build tool FinalBuilder will help you develop and maintain an
automated build process where you can do things such get a labeled version
of your code from your vcs, get labeled versions of the third party
components, compile it, compile the help file, build the install, upload it
to your website.
Another advantage of using finalbuilder to compile projects is you don't
need the specific versions of third party components you need for that
project installed in the ide, just tell finalbuilder where they are. Some of
our customers keep a project manifest file which defines the vcs labels for
each third party product they use for a project, so the automated build will
always get the correct version before building. If they decide to upgrade to
a newer version, it's just a case of changing the label in the manifest file
and rebuilding.
</shamelessplug>
HTH
--
Regards
Vincent Parrett
Atozed Software http://www.atozedsoftware.com
My blog : http://blogs.atozed.com/vincent
----------------------------------------
Automate your Build Process with FinalBuilder
|
|
| Back to top |
|
 |
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
|