Steve Bennett wrote:
> Hi all,

Hi Steve.

>   I'm trying to automatically maintain wix source files to 
> generate a .msi as the final stage of a build process. That 
> is, each time a build is done, I'd like to update a wix 
> source file to refer to the latest set of files that are 
> designated as being in the release. It's quite important to 
> us that this be automated, as we're trying to reduce the 
> number of file lists that need to be hand-maintained down to 
> a very small number...
> 
> I'm sill new to WiX, but so far I can see three pretty 
> different ways to do this:
> 
> 1) "Manually" generating the <directory> tree structure by 
> writing code to traverse directories and generate code, guids 
> and component ids.
> 
> 2) Using tallow from WiX 2.0 to generate a fragment, then 
> link it in. (Not sure about the linking process yet, but it 
> looks easy enough)
> 
> 3) Using heat from WiX 3.0 to do basically the same thing as 2).

All of them seem to work given my very short experience with Wix.

I am using 1) right now since I need a bit of customization
(like ignoring certain subdirectories, some renaming), but 
I have temporarily used the others, too.

> However, I'm seeing warnings everywhere that generating Guids 
> automatically (with the -gg options on both tallow and heat) 
> is a Bad Thing (tm). For example, Tallow gives this warning 
> (annoyingly mixed into stdout): WARNING: AUTOMATICALLY 
> GENERATING GUIDS IS A DANGEROUS FEATURE BECAUSE IT MAY CA
> USE COMPONENT RULES TO BE BROKEN.  PLEASE READ THE FOLLOWING 
> ARTICLES TO LEARN MORE ABOUT THE COMPONENT RULES. <snip>

I chose to ignore this particular warning as I have not found
any case where the automatic component naming makes things worse
than manual naming. Yes, I tried simple upgrade scenarios.

Note that this does not mean that component management works
in all cases: As soon as some 'legacy' installer messes with
your files or if some other installer happens to install the
same files using different component guids, the whole thing
will get messed up anyway.

So the whole compoment management thing seems a bit like an
overengineered warning sign that does not add any structural
security (the files would need to be under exclusive manage-
ment of the installer system or such)...

> Also, Derek Cicerone's blog on Heat explicitly says you're 
> not supposed to attempt to automatically maintain setup 
> files: "Heat is designed to allow a setup author to very 
> quickly generate their setup authoring the first time. From 
> then onward, the authoring should be maintained manually to 
> ensure that guids and identifiers remain stable and component 
> rules are not broken." 

> Does anyone have any thoughts, comments or suggestions on 
> what the best way to handle this is? Since we probably don't 
> really intend to track Guids anyway, or attempt to perform 
> upgrades at this fine-grained component level (the whole 
> product is under 10 meg), is it safe to disregard these 
> warnings? How do other people automatically maintain WiX 
> setup files, presuming that it is indeed safe and desirable to do so.

Well, personally I think it is far more dangerous to leave any
manual steps in the build process than to have some fairly
well defined pitfall in an automated setup.

Andre'

-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys - and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users

Reply via email to