| Andre Schnoor 2006-02-16, 7:59 am |
| Once again struggling with runtime deployment, I thought about a
completely different approach which might be a good alternative to
"stripping down" or "building up".
What about "writing out" a runtime image? This sould have several huge
advantages:
1. Development and runtime images are 100% independent. There is no more
need to "strip - snapshot - suicide" a development image.
2. A complete and seamless product building and packaging procedure
(e.g. accessing an ERP database for inclusion/exclusion of features,
configuration of different product families and editions (e.g. "Demo",
"Commercial", "Pro"), automated user documentation, executable packing
for different target platforms, resource integration (splash screen,
icons, sound), installer configuration, file aggregation, etc) can be
run from the development image using a comfortable GUI tool - in ONE STEP.
3. Much of the complexity during image startup results from images being
dynamically used for both headful/headless runtime and development. This
complexity will be significantly reduced, because runtime images will
solely contain dedicated runtime code (very much like conventional builds).
Basically this could be implemented by selectively collecting code
(packages, bundles, prerequisites) from the development image and
writing it out to an external runtime image.
The engineering challenge probably is how to artificially organize the
external image's memory without actually running it on a VM. I'm
absolutely confident however, the VM engineers know how to do that. An
ImageWriter already exists.
What do you think?
Andre Schnoor
P.S: I'm currently using a fully automated procedure as described in 2
for cross-platform builds with some success. But it still requires
several snapshots and restarts and many "DoIts" to complete.
|