Hi, I've been musing through the design of AI recently. AI and the underlying tools, libraries, and such are a great improvement over the nearly hidden code of the old Solaris installer. Yet AI still strikes me as a monolithic solution to a modular and potentially iterative problem.
Granted I could use the libraries and such to build an installer to my liking, but I was wondering if anyone thought of taking advantage of SMF and breaking AI into multiple services with well defined dependencies... I'm thinking it could be done in multiple services (not necessarily executing in this order): - probe the system and write down what it finds. - hunt for & load drivers as necessary, perhaps spawning another probe. - select a service from which to fetch data. - request and download a matching manifest from the service. - process the storage section of the manifest. - process the package section of the manifest, installing software as appropriate. - process post-installation configuration (host name, etc.) - post-configuration actions (reboot, spawn some other service?). If these were individual SMF services, then when one fails, would it be easier to fix the problem (user intervention) and continue processing? There could be milestones for probe-complete, storage-configuration-complete, etc. This might also lend itself to more extensibility without having to rewrite sections of AI just because someone wanted to add some new feature... or even include some third party stuff... Anyway, just some random thots... -- ~~~~\0/~~~~ Cheers, Jon. {-%] ======== If you always do what you've always done, you'll always get what you've always gotten. - Anon. -------- When someone asks you, "Penny for your thoughts," and you put your two cents in, what happens to the other penny? - G. Carlin (May 12, 1937 - June 22, 2008) -------------- next part -------------- A non-text attachment was scrubbed... Name: jon_aimone.vcf Type: text/x-vcard Size: 300 bytes Desc: not available URL: <http://mail.opensolaris.org/pipermail/caiman-discuss/attachments/20091021/99c94418/attachment.vcf>