Page 1 of 1

Does CACHESOURCES create "monolithic" single exe's for patch

Posted: Sun Jan 08, 2012 6:24 pm
by spicymikey
So almost have our entire installation process converted to IA 2012. Have a full featured webdeploy scheme in place that handles patches, re-installs full setups automatically and silently, schedules web updates with random days and time-of-day settings to spread out the load on our server, and a few other nice things. Must say it is a very impressive product. A bit quirky, but not much more than other developer tools I've used over the years.

However, in order for this to be complete, I must have a solution for customers who want to download and install stand alone copies (in addition to our web deploy method). Customers must have a hard copy of the product for future use if they chose not to continue with our software subscription. Also, IT admins for larger customers with 10, 20, etc workstations will probably want to download a full setup ONCE and then save it to a share drive to deploy initially to all their workstations (or product has a server component with workstation installs accessing a single SQL Server database)

I read the white paper on publishing web updates and creating patches. I've pressed F1 and read the online help. But I'm still not sure how to proceed with this because much of this documentation is dated from 2007 and there is this new CACHESOURCES variable that seems to do partially what I want (although I see no documentation on it)

My Question: How can I create a Single exe setup that can be updated from the same patch that is created for my web deployed instllations. From what I read (2007 documentation) you have to create a SEPARATE patch that works with single file installs. In addition, to make it "monolithic" like the white paper describes it, you will want to temporarily comment out all the media blocks and then compile it. That all seems like a workaround, and, since it was written in 2007 I was hoping there was a better solution in IA 2012.

Any suggestions from IA or the community? Can we somehow create a single patch that works with different methods of original deployment? And can it be done without the need to comment out media blocks temporarily? Does this CACHESOURCES variable help in that regard somehow

Re: Does CACHESOURCES create "monolithic" single exe's for p

Posted: Wed Jan 11, 2012 2:14 am
by giaviv
First off, indeed, if you want to create a monolithic single file EXE, you can do that without having to comment out any web media blocks, of course. You just choose to build as single file EXE!

The trick for commenting out web media blocks applies to when you want to build a single file monolithic EXE which also LOCALLY CACHES setup sources.

However, this has since been improved - if you today, you want to build a single file EXE, with the option to locally cache sources, then you just check the "always cache setup sources" check-box. You don’t need to manually hack your way through it by building a web based EXE with all the web media blocks commented out any longer.

About patches:

1) Each patch target should be explicitly added as a patch reference. This is simply a requirement and one that costs them very little to do. They can try to hack their way around this with mixed results and NO support.
2) The above discussion of locally cached sources does not mitigate the requirement that each patch target must still be added as a patch reference.
3) Of course, locally cached sources help with patching since they eliminate the "select setup source front".
4) A patch does not contain any data other than the delta between the original (reference) setups and the latest version of the setup. So patches are always "monolithic" in a sense.

Re: Does CACHESOURCES create "monolithic" single exe's for p

Posted: Wed Jan 11, 2012 10:41 am
by spicymikey
Thanks for clarifying giaviv. Lots of stuff to draw on from you boards and documentation, but lots of the advice given on these boards is old and for older version, even the white papers are several years old. With no frame of reference I was getting confused. I suspected the CACHESOURCES replaced the white paper documentation you have on creating patches since that was written in 2007 but wasn't certain since i couldn't find any newer documentation on it. Hopefully your comments will help others too.

There's still this nagging issue with CACHESOURCES not working when changed from the DEFAULT setting. As I mentioned in another thread, it causes my Web Deploy patch to always incude every file even if it hasn't changed. See link: (http://www.installaware.com/forum/viewt ... f=2&t=7975), however, the good news is that I realized that simply turning the switch OFF before doing the patch and then turning it back on before creating the SFX, is a viable workaround for now. Ideally a developer would like to just be able to leave the switch set on all the time if they wanted to take advantage of its benefits. I hope someone can solve that one because I am out of ideas.

Lastly, regarding your 4 item list titled "About Patches"; In item 1: Are you saying that we need to have separate and distinct patch exe's for our customers who originally installed with the SFX version, versus customers who installed with a Web version (even if they were created at the same time from the same source script with the same revision#)? If so, how do you manage such a thing? If we put two separate patches on our website and label one "For customers who installed from our SFX", and another labeled "For our customers who installed from the web", then that will be a recipe for increased calls to our tech line! The average customer will a) not really know what we mean, and b) even if they did probably won't remember how they installed it originally. I was hoping there was a single point of patching for ALL customers regardless of how they got the product installed in the first place. Maybe there is and I'm just confused again. Can you set me straight please?

Mike

Re: Does CACHESOURCES create "monolithic" single exe's for p

Posted: Wed Jan 18, 2012 8:15 pm
by giaviv
Hi,

About your issue with CACHESOURCES breaking things when not left at DEFAULT - I was unable to reproduce this. Could you please create a minimal reproducing project and attach it here?

Regarding the second part of your post, you do not need to build multiple patches. But you must add each setup that you want to patch against as a patch reference when building your single patch.