Best way to invoke Wix from a TFS build workflow?

classic Classic list List threaded Threaded
34 messages Options
12
Reply | Threaded
Open this post in threaded view
|

Best way to invoke Wix from a TFS build workflow?

David Rickard (USA)
I need to build some MSIs with Wix during our TFS build. Our current TFS build is using the Windows Workflow XAML files to declare the build logic. What's the best way to invoke Wix from there? Directly invoking the process from an activity? Going down to a powershell script and calling it from there? Are there any custom Wix activities to use?
------------------------------------------------------------------------------
All the data continuously generated in your IT infrastructure contains a
definitive record of customers, application performance, security
threats, fraudulent activity and more. Splunk takes this data and makes
sense of it. Business sense. IT sense. Common sense.
http://p.sf.net/sfu/splunk-d2dcopy1
_______________________________________________
WiX-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/wix-users
Reply | Threaded
Open this post in threaded view
|

Re: Best way to invoke Wix from a TFS build workflow?

Christopher Painter



The simplest way is to use Votive to generate a .SLN / .WIXPROJ and then
add the sln configuration | platform to to the build parameters in the
build definition.  You shouldn't have to do any customizations in workflow
as the Default Template will work out of the box.   Passing a
ProductVersion property takes a little bit more work on the msbuild side  (
build parameters and preprocessor definitions in the wixproj and wixs ) but
it doesn't require any workflow changes.

----------------------------------------

From: "David Rickard (USA)" <[hidden email]>

Sent: Tuesday, September 20, 2011 5:11 PM

To: "[hidden email]" <[hidden email]>

Subject: [WiX-users] Best way to invoke Wix from a TFS build workflow?


I need to build some MSIs with Wix during our TFS build. Our current TFS
build is using the Windows Workflow XAML files to declare the build logic.
What's the best way to invoke Wix from there? Directly invoking the process
from an activity? Going down to a powershell script and calling it from
there? Are there any custom Wix activities to use?

----------------------------------------------------------------------------
--

All the data continuously generated in your IT infrastructure contains a

definitive record of customers, application performance, security

threats, fraudulent activity and more. Splunk takes this data and makes

sense of it. Business sense. IT sense. Common sense.

http://p.sf.net/sfu/splunk-d2dcopy1

_______________________________________________

WiX-users mailing list

[hidden email]

https://lists.sourceforge.net/lists/listinfo/wix-users


------------------------------------------------------------------------------
All the data continuously generated in your IT infrastructure contains a
definitive record of customers, application performance, security
threats, fraudulent activity and more. Splunk takes this data and makes
sense of it. Business sense. IT sense. Common sense.
http://p.sf.net/sfu/splunk-d2dcopy1
_______________________________________________
WiX-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/wix-users
Reply | Threaded
Open this post in threaded view
|

Re: Best way to invoke Wix from a TFS build workflow?

John Bergman
In reply to this post by David Rickard (USA)
Are you building Projects that exist in VS2008 or 2010?  If so, we simply created the WiXprojects and it was all handled automatically.

In our case, we created a separate project that handled the build of the install packages, using MergeModules from several places, including some of our own.  For that separate solution, we used relative pathing to the .MSM files.  

John

-----Original Message-----
From: David Rickard (USA) [mailto:[hidden email]]
Sent: Tuesday, September 20, 2011 5:09 PM
To: [hidden email]
Subject: [WiX-users] Best way to invoke Wix from a TFS build workflow?

I need to build some MSIs with Wix during our TFS build. Our current TFS build is using the Windows Workflow XAML files to declare the build logic. What's the best way to invoke Wix from there? Directly invoking the process from an activity? Going down to a powershell script and calling it from there? Are there any custom Wix activities to use?
------------------------------------------------------------------------------
All the data continuously generated in your IT infrastructure contains a definitive record of customers, application performance, security threats, fraudulent activity and more. Splunk takes this data and makes sense of it. Business sense. IT sense. Common sense.
http://p.sf.net/sfu/splunk-d2dcopy1
_______________________________________________
WiX-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/wix-users

------------------------------------------------------------------------------
All the data continuously generated in your IT infrastructure contains a
definitive record of customers, application performance, security
threats, fraudulent activity and more. Splunk takes this data and makes
sense of it. Business sense. IT sense. Common sense.
http://p.sf.net/sfu/splunk-d2dcopy1
_______________________________________________
WiX-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/wix-users
Reply | Threaded
Open this post in threaded view
|

Re: Best way to invoke Wix from a TFS build workflow?

John Cooper-2
In reply to this post by David Rickard (USA)
As the others have said, there's nothing special about wixproj Projects--they'll build fine as part of a VS 2010 Solution.  To get build order right, you'll want to have appropriate references to projects consumed by the wixproj in it.  All of our builds make either an MSI or a wixlib, and three of them bind the MSI to setup.exe using setupbld.exe.

--
John Merryweather Cooper
Jack Henry & Associates, Inc. (Premier Tech, Inc.)
Build & Install Engineer - jXchange
Office:  913-341-3434 x791011
[hidden email]




-----Original Message-----
From: David Rickard (USA) [mailto:[hidden email]]
Sent: Tuesday, September 20, 2011 5:09 PM
To: [hidden email]
Subject: [WiX-users] Best way to invoke Wix from a TFS build workflow?

I need to build some MSIs with Wix during our TFS build. Our current TFS build is using the Windows Workflow XAML files to declare the build logic. What's the best way to invoke Wix from there? Directly invoking the process from an activity? Going down to a powershell script and calling it from there? Are there any custom Wix activities to use?
------------------------------------------------------------------------------
All the data continuously generated in your IT infrastructure contains a definitive record of customers, application performance, security threats, fraudulent activity and more. Splunk takes this data and makes sense of it. Business sense. IT sense. Common sense.
http://p.sf.net/sfu/splunk-d2dcopy1
_______________________________________________
WiX-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/wix-users
NOTICE: This electronic mail message and any files transmitted with it are intended
exclusively for the individual or entity to which it is addressed. The message,
together with any attachment, may contain confidential and/or privileged information.
Any unauthorized review, use, printing, saving, copying, disclosure or distribution
is strictly prohibited. If you have received this message in error, please
immediately advise the sender by reply email and delete all copies.


------------------------------------------------------------------------------
All the data continuously generated in your IT infrastructure contains a
definitive record of customers, application performance, security
threats, fraudulent activity and more. Splunk takes this data and makes
sense of it. Business sense. IT sense. Common sense.
http://p.sf.net/sfu/splunk-d2dcopy1
_______________________________________________
WiX-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/wix-users
Reply | Threaded
Open this post in threaded view
|

Re: Best way to invoke Wix from a TFS build workflow?

David Rickard (USA)
In reply to this post by John Bergman
VS2010. Will the TFS build server need to have WiX installed on it to build them?

-----Original Message-----
From: John Bergman [mailto:[hidden email]]
Sent: Tuesday, September 20, 2011 4:12 PM
To: General discussion for Windows Installer XML toolset.
Subject: Re: [WiX-users] Best way to invoke Wix from a TFS build workflow?

Are you building Projects that exist in VS2008 or 2010?  If so, we simply created the WiXprojects and it was all handled automatically.

In our case, we created a separate project that handled the build of the install packages, using MergeModules from several places, including some of our own.  For that separate solution, we used relative pathing to the .MSM files.  

John

-----Original Message-----
From: David Rickard (USA) [mailto:[hidden email]]
Sent: Tuesday, September 20, 2011 5:09 PM
To: [hidden email]
Subject: [WiX-users] Best way to invoke Wix from a TFS build workflow?

I need to build some MSIs with Wix during our TFS build. Our current TFS build is using the Windows Workflow XAML files to declare the build logic. What's the best way to invoke Wix from there? Directly invoking the process from an activity? Going down to a powershell script and calling it from there? Are there any custom Wix activities to use?
------------------------------------------------------------------------------
All the data continuously generated in your IT infrastructure contains a definitive record of customers, application performance, security threats, fraudulent activity and more. Splunk takes this data and makes sense of it. Business sense. IT sense. Common sense.
http://p.sf.net/sfu/splunk-d2dcopy1
_______________________________________________
WiX-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/wix-users

------------------------------------------------------------------------------
All the data continuously generated in your IT infrastructure contains a definitive record of customers, application performance, security threats, fraudulent activity and more. Splunk takes this data and makes sense of it. Business sense. IT sense. Common sense.
http://p.sf.net/sfu/splunk-d2dcopy1
_______________________________________________
WiX-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/wix-users





------------------------------------------------------------------------------
All the data continuously generated in your IT infrastructure contains a
definitive record of customers, application performance, security
threats, fraudulent activity and more. Splunk takes this data and makes
sense of it. Business sense. IT sense. Common sense.
http://p.sf.net/sfu/splunk-d2dcopy1
_______________________________________________
WiX-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/wix-users
Reply | Threaded
Open this post in threaded view
|

Re: Best way to invoke Wix from a TFS build workflow?

Christopher Painter-2
In reply to this post by David Rickard (USA)
Yes.  If you don't have it you'll get an msbuild error saying it can't find
$(MSBuildExtensionsPath)\Microsoft\WiX\v3.x\Wix.targets.

----------------------------------------

From: "David Rickard (USA)" <[hidden email]>

Sent: Wednesday, September 21, 2011 11:05 AM

To: "General discussion for Windows Installer XML toolset."
<[hidden email]>

Subject: Re: [WiX-users] Best way to invoke Wix from a TFS build workflow?


VS2010. Will the TFS build server need to have WiX installed on it to build
them?


-----Original Message-----

From: John Bergman [mailto:[hidden email]]

Sent: Tuesday, September 20, 2011 4:12 PM

To: General discussion for Windows Installer XML toolset.

Subject: Re: [WiX-users] Best way to invoke Wix from a TFS build workflow?


Are you building Projects that exist in VS2008 or 2010? If so, we simply
created the WiXprojects and it was all handled automatically.


In our case, we created a separate project that handled the build of the
install packages, using MergeModules from several places, including some of
our own. For that separate solution, we used relative pathing to the .MSM
files.


John


-----Original Message-----

From: David Rickard (USA) [mailto:[hidden email]]

Sent: Tuesday, September 20, 2011 5:09 PM

To: [hidden email]

Subject: [WiX-users] Best way to invoke Wix from a TFS build workflow?


I need to build some MSIs with Wix during our TFS build. Our current TFS
build is using the Windows Workflow XAML files to declare the build logic.
What's the best way to invoke Wix from there? Directly invoking the process
from an activity? Going down to a powershell script and calling it from
there? Are there any custom Wix activities to use?

----------------------------------------------------------------------------
--

All the data continuously generated in your IT infrastructure contains a
definitive record of customers, application performance, security threats,
fraudulent activity and more. Splunk takes this data and makes sense of it.
Business sense. IT sense. Common sense.

http://p.sf.net/sfu/splunk-d2dcopy1

_______________________________________________

WiX-users mailing list

[hidden email]

https://lists.sourceforge.net/lists/listinfo/wix-users


----------------------------------------------------------------------------
--

All the data continuously generated in your IT infrastructure contains a
definitive record of customers, application performance, security threats,
fraudulent activity and more. Splunk takes this data and makes sense of it.
Business sense. IT sense. Common sense.

http://p.sf.net/sfu/splunk-d2dcopy1

_______________________________________________

WiX-users mailing list

[hidden email]

https://lists.sourceforge.net/lists/listinfo/wix-users


----------------------------------------------------------------------------
--

All the data continuously generated in your IT infrastructure contains a

definitive record of customers, application performance, security

threats, fraudulent activity and more. Splunk takes this data and makes

sense of it. Business sense. IT sense. Common sense.

http://p.sf.net/sfu/splunk-d2dcopy1

_______________________________________________

WiX-users mailing list

[hidden email]

https://lists.sourceforge.net/lists/listinfo/wix-users


------------------------------------------------------------------------------
All the data continuously generated in your IT infrastructure contains a
definitive record of customers, application performance, security
threats, fraudulent activity and more. Splunk takes this data and makes
sense of it. Business sense. IT sense. Common sense.
http://p.sf.net/sfu/splunk-d2dcopy1
_______________________________________________
WiX-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/wix-users
Reply | Threaded
Open this post in threaded view
|

Re: Best way to invoke Wix from a TFS build workflow?

David Rickard (USA)
In reply to this post by Christopher Painter
Alright. In this case how would you run a program to add all the files in a given directory to the MSI? Before we had an EXE that generated a merge module of files based on a directory. Could this hook in somehow?

-----Original Message-----
From: Christopher Painter [mailto:[hidden email]]
Sent: Tuesday, September 20, 2011 4:09 PM
To: General discussion for Windows Installer XML toolset.; [hidden email]
Subject: Re: [WiX-users] Best way to invoke Wix from a TFS build workflow?




The simplest way is to use Votive to generate a .SLN / .WIXPROJ and then add the sln configuration | platform to to the build parameters in the build definition.  You shouldn't have to do any customizations in workflow
as the Default Template will work out of the box.   Passing a
ProductVersion property takes a little bit more work on the msbuild side  ( build parameters and preprocessor definitions in the wixproj and wixs ) but it doesn't require any workflow changes.

----------------------------------------

From: "David Rickard (USA)" <[hidden email]>

Sent: Tuesday, September 20, 2011 5:11 PM

To: "[hidden email]" <[hidden email]>

Subject: [WiX-users] Best way to invoke Wix from a TFS build workflow?


I need to build some MSIs with Wix during our TFS build. Our current TFS build is using the Windows Workflow XAML files to declare the build logic.
What's the best way to invoke Wix from there? Directly invoking the process from an activity? Going down to a powershell script and calling it from there? Are there any custom Wix activities to use?

----------------------------------------------------------------------------
--

All the data continuously generated in your IT infrastructure contains a

definitive record of customers, application performance, security

threats, fraudulent activity and more. Splunk takes this data and makes

sense of it. Business sense. IT sense. Common sense.

http://p.sf.net/sfu/splunk-d2dcopy1

_______________________________________________

WiX-users mailing list

[hidden email]

https://lists.sourceforge.net/lists/listinfo/wix-users


------------------------------------------------------------------------------
All the data continuously generated in your IT infrastructure contains a definitive record of customers, application performance, security threats, fraudulent activity and more. Splunk takes this data and makes sense of it. Business sense. IT sense. Common sense.
http://p.sf.net/sfu/splunk-d2dcopy1
_______________________________________________
WiX-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/wix-users





------------------------------------------------------------------------------
All the data continuously generated in your IT infrastructure contains a
definitive record of customers, application performance, security
threats, fraudulent activity and more. Splunk takes this data and makes
sense of it. Business sense. IT sense. Common sense.
http://p.sf.net/sfu/splunk-d2dcopy1
_______________________________________________
WiX-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/wix-users
Reply | Threaded
Open this post in threaded view
|

Re: Best way to invoke Wix from a TFS build workflow?

Christopher Painter-2
In reply to this post by David Rickard (USA)
What you is describing is harvesting and WiX 3.5 I believe had this
functionality but was disabled by default.  The wixproj is an msbuild
document so you can hook any kind of prebuild target into it that you can
imagine.


I personally don't do what you suggest though.  I want to explictly
add/remove files from my installers in a declarative fashion and not rely
on an automagical easy button to make it happen for me.   I've written
tomes on why I choose to do it this way.


I do like it to be easy though and since you mentioned merge modules, you
should check out my open source project ISWIX ( iswix.codeplex.com )   It's
a tool that makes authoring the modules faster and easier.    Your merge
modules might have a lot of files ( I once had a merge module with 10,000
files in it ) but I doubt the churn in the number of and names of the files
really changes so much from one build to another that you can't be bothered
to update the installer when needed.

----------------------------------------

From: "David Rickard (USA)" <[hidden email]>

Sent: Wednesday, September 21, 2011 12:11 PM

To: "[hidden email]" <[hidden email]>,
"General discussion for Windows Installer XML toolset."
<[hidden email]>

Subject: Re: [WiX-users] Best way to invoke Wix from a TFS build workflow?


Alright. In this case how would you run a program to add all the files in a
given directory to the MSI? Before we had an EXE that generated a merge
module of files based on a directory. Could this hook in somehow?


-----Original Message-----

From: Christopher Painter [mailto:[hidden email]]

Sent: Tuesday, September 20, 2011 4:09 PM

To: General discussion for Windows Installer XML toolset.;
[hidden email]

Subject: Re: [WiX-users] Best way to invoke Wix from a TFS build workflow?


The simplest way is to use Votive to generate a .SLN / .WIXPROJ and then
add the sln configuration | platform to to the build parameters in the
build definition. You shouldn't have to do any customizations in workflow

as the Default Template will work out of the box. Passing a

ProductVersion property takes a little bit more work on the msbuild side (
build parameters and preprocessor definitions in the wixproj and wixs ) but
it doesn't require any workflow changes.


----------------------------------------


From: "David Rickard (USA)" <[hidden email]>


Sent: Tuesday, September 20, 2011 5:11 PM


To: "[hidden email]" <[hidden email]>


Subject: [WiX-users] Best way to invoke Wix from a TFS build workflow?


I need to build some MSIs with Wix during our TFS build. Our current TFS
build is using the Windows Workflow XAML files to declare the build logic.


What's the best way to invoke Wix from there? Directly invoking the process
from an activity? Going down to a powershell script and calling it from
there? Are there any custom Wix activities to use?


----------------------------------------------------------------------------


--


All the data continuously generated in your IT infrastructure contains a


definitive record of customers, application performance, security


threats, fraudulent activity and more. Splunk takes this data and makes


sense of it. Business sense. IT sense. Common sense.


http://p.sf.net/sfu/splunk-d2dcopy1


_______________________________________________


WiX-users mailing list


[hidden email]


https://lists.sourceforge.net/lists/listinfo/wix-users


----------------------------------------------------------------------------
--

All the data continuously generated in your IT infrastructure contains a
definitive record of customers, application performance, security threats,
fraudulent activity and more. Splunk takes this data and makes sense of it.
Business sense. IT sense. Common sense.

http://p.sf.net/sfu/splunk-d2dcopy1

_______________________________________________

WiX-users mailing list

[hidden email]

https://lists.sourceforge.net/lists/listinfo/wix-users


----------------------------------------------------------------------------
--

All the data continuously generated in your IT infrastructure contains a

definitive record of customers, application performance, security

threats, fraudulent activity and more. Splunk takes this data and makes

sense of it. Business sense. IT sense. Common sense.

http://p.sf.net/sfu/splunk-d2dcopy1

_______________________________________________

WiX-users mailing list

[hidden email]

https://lists.sourceforge.net/lists/listinfo/wix-users


------------------------------------------------------------------------------
All the data continuously generated in your IT infrastructure contains a
definitive record of customers, application performance, security
threats, fraudulent activity and more. Splunk takes this data and makes
sense of it. Business sense. IT sense. Common sense.
http://p.sf.net/sfu/splunk-d2dcopy1
_______________________________________________
WiX-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/wix-users
Reply | Threaded
Open this post in threaded view
|

Re: Best way to invoke Wix from a TFS build workflow?

Christopher Painter-2
In reply to this post by David Rickard (USA)
Open the solution up and click properties on the merge module project.  Go
to the build events tab then type your command into the pre-build event
command line.


I still wouldn't do it though.  This type of dynamic authoring frequently
masks up stream problems.  What should have been a build break will end up
being a runtime break.

----------------------------------------

From: "David Rickard (USA)" <[hidden email]>

Sent: Wednesday, September 21, 2011 12:44 PM

To: "[hidden email]" <[hidden email]>,
"General discussion for Windows Installer XML toolset."
<[hidden email]>

Subject: RE: [WiX-users] Best way to invoke Wix from a TFS build workflow?


Alright. In this case how would you run a program to add all the files in a
given directory to the MSI? Before we had an EXE that generated a merge
module of files based on a directory. Could this hook in somehow?


-----Original Message-----

From: Christopher Painter [mailto:[hidden email]]

Sent: Tuesday, September 20, 2011 4:09 PM

To: General discussion for Windows Installer XML toolset.;
[hidden email]

Subject: Re: [WiX-users] Best way to invoke Wix from a TFS build workflow?


The simplest way is to use Votive to generate a .SLN / .WIXPROJ and then
add the sln configuration | platform to to the build parameters in the
build definition. You shouldn't have to do any customizations in workflow

as the Default Template will work out of the box. Passing a

ProductVersion property takes a little bit more work on the msbuild side (
build parameters and preprocessor definitions in the wixproj and wixs ) but
it doesn't require any workflow changes.


----------------------------------------


From: "David Rickard (USA)" <[hidden email]>


Sent: Tuesday, September 20, 2011 5:11 PM


To: "[hidden email]" <[hidden email]>


Subject: [WiX-users] Best way to invoke Wix from a TFS build workflow?


I need to build some MSIs with Wix during our TFS build. Our current TFS
build is using the Windows Workflow XAML files to declare the build logic.


What's the best way to invoke Wix from there? Directly invoking the process
from an activity? Going down to a powershell script and calling it from
there? Are there any custom Wix activities to use?


----------------------------------------------------------------------------


--


All the data continuously generated in your IT infrastructure contains a


definitive record of customers, application performance, security


threats, fraudulent activity and more. Splunk takes this data and makes


sense of it. Business sense. IT sense. Common sense.


http://p.sf.net/sfu/splunk-d2dcopy1


_______________________________________________


WiX-users mailing list


[hidden email]


https://lists.sourceforge.net/lists/listinfo/wix-users


----------------------------------------------------------------------------
--

All the data continuously generated in your IT infrastructure contains a
definitive record of customers, application performance, security threats,
fraudulent activity and more. Splunk takes this data and makes sense of it.
Business sense. IT sense. Common sense.

http://p.sf.net/sfu/splunk-d2dcopy1

_______________________________________________

WiX-users mailing list

[hidden email]

https://lists.sourceforge.net/lists/listinfo/wix-users


------------------------------------------------------------------------------
All the data continuously generated in your IT infrastructure contains a
definitive record of customers, application performance, security
threats, fraudulent activity and more. Splunk takes this data and makes
sense of it. Business sense. IT sense. Common sense.
http://p.sf.net/sfu/splunk-d2dcopy1
_______________________________________________
WiX-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/wix-users
Reply | Threaded
Open this post in threaded view
|

Re: Best way to invoke Wix from a TFS build workflow?

John Cooper-2
In reply to this post by David Rickard (USA)
Yes.
--
John M. Cooper

-----Original Message-----
From: David Rickard (USA) [mailto:[hidden email]]
Sent: Wednesday, September 21, 2011 11:02 AM
To: General discussion for Windows Installer XML toolset.
Subject: Re: [WiX-users] Best way to invoke Wix from a TFS build workflow?

VS2010. Will the TFS build server need to have WiX installed on it to build them?

-----Original Message-----
From: John Bergman [mailto:[hidden email]]
Sent: Tuesday, September 20, 2011 4:12 PM
To: General discussion for Windows Installer XML toolset.
Subject: Re: [WiX-users] Best way to invoke Wix from a TFS build workflow?

Are you building Projects that exist in VS2008 or 2010?  If so, we simply created the WiXprojects and it was all handled automatically.

In our case, we created a separate project that handled the build of the install packages, using MergeModules from several places, including some of our own.  For that separate solution, we used relative pathing to the .MSM files.  

John

-----Original Message-----
From: David Rickard (USA) [mailto:[hidden email]]
Sent: Tuesday, September 20, 2011 5:09 PM
To: [hidden email]
Subject: [WiX-users] Best way to invoke Wix from a TFS build workflow?

I need to build some MSIs with Wix during our TFS build. Our current TFS build is using the Windows Workflow XAML files to declare the build logic. What's the best way to invoke Wix from there? Directly invoking the process from an activity? Going down to a powershell script and calling it from there? Are there any custom Wix activities to use?
------------------------------------------------------------------------------
All the data continuously generated in your IT infrastructure contains a definitive record of customers, application performance, security threats, fraudulent activity and more. Splunk takes this data and makes sense of it. Business sense. IT sense. Common sense.
http://p.sf.net/sfu/splunk-d2dcopy1
_______________________________________________
WiX-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/wix-users

------------------------------------------------------------------------------
All the data continuously generated in your IT infrastructure contains a definitive record of customers, application performance, security threats, fraudulent activity and more. Splunk takes this data and makes sense of it. Business sense. IT sense. Common sense.
http://p.sf.net/sfu/splunk-d2dcopy1
_______________________________________________
WiX-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/wix-users





------------------------------------------------------------------------------
All the data continuously generated in your IT infrastructure contains a definitive record of customers, application performance, security threats, fraudulent activity and more. Splunk takes this data and makes sense of it. Business sense. IT sense. Common sense.
http://p.sf.net/sfu/splunk-d2dcopy1
_______________________________________________
WiX-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/wix-users
NOTICE: This electronic mail message and any files transmitted with it are intended
exclusively for the individual or entity to which it is addressed. The message,
together with any attachment, may contain confidential and/or privileged information.
Any unauthorized review, use, printing, saving, copying, disclosure or distribution
is strictly prohibited. If you have received this message in error, please
immediately advise the sender by reply email and delete all copies.


------------------------------------------------------------------------------
All the data continuously generated in your IT infrastructure contains a
definitive record of customers, application performance, security
threats, fraudulent activity and more. Splunk takes this data and makes
sense of it. Business sense. IT sense. Common sense.
http://p.sf.net/sfu/splunk-d2dcopy1
_______________________________________________
WiX-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/wix-users
Reply | Threaded
Open this post in threaded view
|

Re: Best way to invoke Wix from a TFS build workflow?

David Rickard (USA)
In reply to this post by Christopher Painter-2
Thanks for the advice.

Though our devs work with the raw built files and our TFS builds clearly identify build breaks. Installer issues (like someone adding a file to the solution but forgetting to add it to the installer) would be at risk of going unnoticed.

From: Christopher Painter [mailto:[hidden email]]
Sent: Wednesday, September 21, 2011 10:48 AM
To: David Rickard (USA); General discussion for Windows Installer XML toolset.
Subject: RE: [WiX-users] Best way to invoke Wix from a TFS build workflow?

Open the solution up and click properties on the merge module project.  Go to the build events tab then type your command into the pre-build event command line.

I still wouldn't do it though.  This type of dynamic authoring frequently masks up stream problems.  What should have been a build break will end up being a runtime break.

________________________________
From: "David Rickard (USA)" <[hidden email]<mailto:[hidden email]>>
Sent: Wednesday, September 21, 2011 12:44 PM
To: "[hidden email]<mailto:[hidden email]>" <[hidden email]<mailto:[hidden email]>>, "General discussion for Windows Installer XML toolset." <[hidden email]<mailto:[hidden email]>>
Subject: RE: [WiX-users] Best way to invoke Wix from a TFS build workflow?

Alright. In this case how would you run a program to add all the files in a given directory to the MSI? Before we had an EXE that generated a merge module of files based on a directory. Could this hook in somehow?

-----Original Message-----
From: Christopher Painter [mailto:[hidden email]]<mailto:[mailto:[hidden email]]>
Sent: Tuesday, September 20, 2011 4:09 PM
To: General discussion for Windows Installer XML toolset.; [hidden email]<mailto:[hidden email]>
Subject: Re: [WiX-users] Best way to invoke Wix from a TFS build workflow?




The simplest way is to use Votive to generate a .SLN / .WIXPROJ and then add the sln configuration | platform to to the build parameters in the build definition. You shouldn't have to do any customizations in workflow
as the Default Template will work out of the box. Passing a
ProductVersion property takes a little bit more work on the msbuild side ( build parameters and preprocessor definitions in the wixproj and wixs ) but it doesn't require any workflow changes.

----------------------------------------

From: "David Rickard (USA)" <[hidden email]<mailto:[hidden email]>>

Sent: Tuesday, September 20, 2011 5:11 PM

To: "[hidden email]<mailto:[hidden email]>" <[hidden email]<mailto:[hidden email]>>

Subject: [WiX-users] Best way to invoke Wix from a TFS build workflow?


I need to build some MSIs with Wix during our TFS build. Our current TFS build is using the Windows Workflow XAML files to declare the build logic.
What's the best way to invoke Wix from there? Directly invoking the process from an activity? Going down to a powershell script and calling it from there? Are there any custom Wix activities to use?

----------------------------------------------------------------------------
--

All the data continuously generated in your IT infrastructure contains a

definitive record of customers, application performance, security

threats, fraudulent activity and more. Splunk takes this data and makes

sense of it. Business sense. IT sense. Common sense.

http://p.sf.net/sfu/splunk-d2dcopy1

_______________________________________________

WiX-users mailing list

[hidden email]<mailto:[hidden email]>

https://lists.sourceforge.net/lists/listinfo/wix-users


------------------------------------------------------------------------------
All the data continuously generated in your IT infrastructure contains a definitive record of customers, application performance, security threats, fraudulent activity and more. Splunk takes this data and makes sense of it. Business sense. IT sense. Common sense.
http://p.sf.net/sfu/splunk-d2dcopy1
_______________________________________________
WiX-users mailing list
[hidden email]<mailto:[hidden email]>
https://lists.sourceforge.net/lists/listinfo/wix-users




------------------------------------------------------------------------------
All the data continuously generated in your IT infrastructure contains a
definitive record of customers, application performance, security
threats, fraudulent activity and more. Splunk takes this data and makes
sense of it. Business sense. IT sense. Common sense.
http://p.sf.net/sfu/splunk-d2dcopy1
_______________________________________________
WiX-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/wix-users
Reply | Threaded
Open this post in threaded view
|

Re: Best way to invoke Wix from a TFS build workflow?

Christopher Painter-2
In reply to this post by David Rickard (USA)
Email me when the day comes that a file unintentionally disappears from the
installer and it goes unnoticed. :-)   Trust me, I've been doing build and
install for 15 years and it will happen.  


The problem you mention is easily solved by putting the responsibility on
the developer to make sure that he's "done done" and tests the installer
and related functionality change on a clean machine.  Making it an
automagical process just gives the developer more excuses as to why it's
not his fault when it doesn't work.


Also are you doing major upgrades or minor upgrades?  How about patches?

----------------------------------------

From: "David Rickard (USA)" <[hidden email]>

Sent: Wednesday, September 21, 2011 1:44 PM

To: "[hidden email]" <[hidden email]>, "General discussion for Windows
Installer XML toolset." <[hidden email]>

Subject: RE: [WiX-users] Best way to invoke Wix from a TFS build workflow?

Thanks for the advice.
 
Though our devs work with the raw built files and our TFS builds clearly
identify build breaks. Installer issues (like someone adding a file to the
solution but forgetting to add it to the installer) would be at risk of
going unnoticed.
 
From: Christopher Painter [mailto:[hidden email]]

Sent: Wednesday, September 21, 2011 10:48 AM

To: David Rickard (USA); General discussion for Windows Installer XML
toolset.

Subject: RE: [WiX-users] Best way to invoke Wix from a TFS build workflow?
 
Open the solution up and click properties on the merge module project.  Go
to the build events tab then type your command into the pre-build event
command line.


I still wouldn't do it though.  This type of dynamic authoring frequently
masks up stream problems.  What should have been a build break will end up
being a runtime break.
 

----------------------------------------

From: "David Rickard (USA)" <[hidden email]>

Sent: Wednesday, September 21, 2011 12:44 PM

To: "[hidden email]" <[hidden email]>,
"General discussion for Windows Installer XML toolset."
<[hidden email]>

Subject: RE: [WiX-users] Best way to invoke Wix from a TFS build workflow?


Alright. In this case how would you run a program to add all the files in a
given directory to the MSI? Before we had an EXE that generated a merge
module of files based on a directory. Could this hook in somehow?


-----Original Message-----

From: Christopher Painter [mailto:[hidden email]]

Sent: Tuesday, September 20, 2011 4:09 PM

To: General discussion for Windows Installer XML toolset.;
[hidden email]

Subject: Re: [WiX-users] Best way to invoke Wix from a TFS build workflow?


The simplest way is to use Votive to generate a .SLN / .WIXPROJ and then
add the sln configuration | platform to to the build parameters in the
build definition. You shouldn't have to do any customizations in workflow

as the Default Template will work out of the box. Passing a

ProductVersion property takes a little bit more work on the msbuild side (
build parameters and preprocessor definitions in the wixproj and wixs ) but
it doesn't require any workflow changes.


----------------------------------------


From: "David Rickard (USA)" <[hidden email]>


Sent: Tuesday, September 20, 2011 5:11 PM


To: "[hidden email]" <[hidden email]>


Subject: [WiX-users] Best way to invoke Wix from a TFS build workflow?


I need to build some MSIs with Wix during our TFS build. Our current TFS
build is using the Windows Workflow XAML files to declare the build logic.


What's the best way to invoke Wix from there? Directly invoking the process
from an activity? Going down to a powershell script and calling it from
there? Are there any custom Wix activities to use?


----------------------------------------------------------------------------


--


All the data continuously generated in your IT infrastructure contains a


definitive record of customers, application performance, security


threats, fraudulent activity and more. Splunk takes this data and makes


sense of it. Business sense. IT sense. Common sense.


http://p.sf.net/sfu/splunk-d2dcopy1


_______________________________________________


WiX-users mailing list


[hidden email]


https://lists.sourceforge.net/lists/listinfo/wix-users


----------------------------------------------------------------------------
--

All the data continuously generated in your IT infrastructure contains a
definitive record of customers, application performance, security threats,
fraudulent activity and more. Splunk takes this data and makes sense of it.
Business sense. IT sense. Common sense.

http://p.sf.net/sfu/splunk-d2dcopy1

_______________________________________________

WiX-users mailing list

[hidden email]

https://lists.sourceforge.net/lists/listinfo/wix-users


------------------------------------------------------------------------------
All the data continuously generated in your IT infrastructure contains a
definitive record of customers, application performance, security
threats, fraudulent activity and more. Splunk takes this data and makes
sense of it. Business sense. IT sense. Common sense.
http://p.sf.net/sfu/splunk-d2dcopy1
_______________________________________________
WiX-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/wix-users
Reply | Threaded
Open this post in threaded view
|

Re: Best way to invoke Wix from a TFS build workflow?

John Cooper-2
I concur.  And having just had both the "magically disappearing" and the "magically appearing" file situation, it's no fun to figure out.  Generated builds are great to prototype an installer or to run a very pre-release installer, but I want both hands "on the wheel" for anything that's going to be handled by a client.  Heat does good work, but auto generating doesn't always give you what you want when you want it, and the more complex your installer is, the less Heat's defaults are going to always fit.
--
John M. Cooper

-----Original Message-----
From: Christopher Painter [mailto:[hidden email]]
Sent: Wednesday, September 21, 2011 1:54 PM
To: David Rickard (USA); General discussion for Windows Installer XML toolset.
Subject: Re: [WiX-users] Best way to invoke Wix from a TFS build workflow?

Email me when the day comes that a file unintentionally disappears from the
installer and it goes unnoticed. :-)   Trust me, I've been doing build and
install for 15 years and it will happen.  


The problem you mention is easily solved by putting the responsibility on the developer to make sure that he's "done done" and tests the installer and related functionality change on a clean machine.  Making it an automagical process just gives the developer more excuses as to why it's not his fault when it doesn't work.


Also are you doing major upgrades or minor upgrades?  How about patches?

----------------------------------------

From: "David Rickard (USA)" <[hidden email]>

Sent: Wednesday, September 21, 2011 1:44 PM

To: "[hidden email]" <[hidden email]>, "General discussion for Windows Installer XML toolset." <[hidden email]>

Subject: RE: [WiX-users] Best way to invoke Wix from a TFS build workflow?

Thanks for the advice.
 
Though our devs work with the raw built files and our TFS builds clearly identify build breaks. Installer issues (like someone adding a file to the solution but forgetting to add it to the installer) would be at risk of going unnoticed.
 
From: Christopher Painter [mailto:[hidden email]]

Sent: Wednesday, September 21, 2011 10:48 AM

To: David Rickard (USA); General discussion for Windows Installer XML toolset.

Subject: RE: [WiX-users] Best way to invoke Wix from a TFS build workflow?
 
Open the solution up and click properties on the merge module project.  Go to the build events tab then type your command into the pre-build event command line.


I still wouldn't do it though.  This type of dynamic authoring frequently masks up stream problems.  What should have been a build break will end up being a runtime break.
 

----------------------------------------

From: "David Rickard (USA)" <[hidden email]>

Sent: Wednesday, September 21, 2011 12:44 PM

To: "[hidden email]" <[hidden email]>,
"General discussion for Windows Installer XML toolset."
<[hidden email]>

Subject: RE: [WiX-users] Best way to invoke Wix from a TFS build workflow?


Alright. In this case how would you run a program to add all the files in a given directory to the MSI? Before we had an EXE that generated a merge module of files based on a directory. Could this hook in somehow?


-----Original Message-----

From: Christopher Painter [mailto:[hidden email]]

Sent: Tuesday, September 20, 2011 4:09 PM

To: General discussion for Windows Installer XML toolset.; [hidden email]

Subject: Re: [WiX-users] Best way to invoke Wix from a TFS build workflow?


The simplest way is to use Votive to generate a .SLN / .WIXPROJ and then add the sln configuration | platform to to the build parameters in the build definition. You shouldn't have to do any customizations in workflow

as the Default Template will work out of the box. Passing a

ProductVersion property takes a little bit more work on the msbuild side ( build parameters and preprocessor definitions in the wixproj and wixs ) but it doesn't require any workflow changes.


----------------------------------------


From: "David Rickard (USA)" <[hidden email]>


Sent: Tuesday, September 20, 2011 5:11 PM


To: "[hidden email]" <[hidden email]>


Subject: [WiX-users] Best way to invoke Wix from a TFS build workflow?


I need to build some MSIs with Wix during our TFS build. Our current TFS build is using the Windows Workflow XAML files to declare the build logic.


What's the best way to invoke Wix from there? Directly invoking the process
from an activity? Going down to a powershell script and calling it from
there? Are there any custom Wix activities to use?


----------------------------------------------------------------------------


--


All the data continuously generated in your IT infrastructure contains a


definitive record of customers, application performance, security


threats, fraudulent activity and more. Splunk takes this data and makes


sense of it. Business sense. IT sense. Common sense.


http://p.sf.net/sfu/splunk-d2dcopy1


_______________________________________________


WiX-users mailing list


[hidden email]


https://lists.sourceforge.net/lists/listinfo/wix-users


----------------------------------------------------------------------------
--

All the data continuously generated in your IT infrastructure contains a
definitive record of customers, application performance, security threats,
fraudulent activity and more. Splunk takes this data and makes sense of it.
Business sense. IT sense. Common sense.

http://p.sf.net/sfu/splunk-d2dcopy1

_______________________________________________

WiX-users mailing list

[hidden email]

https://lists.sourceforge.net/lists/listinfo/wix-users


------------------------------------------------------------------------------
All the data continuously generated in your IT infrastructure contains a
definitive record of customers, application performance, security
threats, fraudulent activity and more. Splunk takes this data and makes
sense of it. Business sense. IT sense. Common sense.
http://p.sf.net/sfu/splunk-d2dcopy1
_______________________________________________
WiX-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/wix-users
NOTICE: This electronic mail message and any files transmitted with it are intended
exclusively for the individual or entity to which it is addressed. The message,
together with any attachment, may contain confidential and/or privileged information.
Any unauthorized review, use, printing, saving, copying, disclosure or distribution
is strictly prohibited. If you have received this message in error, please
immediately advise the sender by reply email and delete all copies.


------------------------------------------------------------------------------
All the data continuously generated in your IT infrastructure contains a
definitive record of customers, application performance, security
threats, fraudulent activity and more. Splunk takes this data and makes
sense of it. Business sense. IT sense. Common sense.
http://p.sf.net/sfu/splunk-d2dcopy1
_______________________________________________
WiX-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/wix-users
Reply | Threaded
Open this post in threaded view
|

Re: Best way to invoke Wix from a TFS build workflow?

JesseBearden
In reply to this post by David Rickard (USA)
David Rickard (USA) wrote
VS2010. Will the TFS build server need to have WiX installed on it to build them?
You don't necessarily have to install WiX on the build server.  I tend to avoid it for the cases where one branch will need a different version, and since some developers don't have it installed.  Check this link out:

http://wix.sourceforge.net/manual-wix3/daily_builds.htm

You won't be able to open WiX projects in Visual Studio I don't think, but they build fine from the command line/build.  (At least in our build)
Reply | Threaded
Open this post in threaded view
|

Re: Best way to invoke Wix from a TFS build workflow?

John Bergman
This is a good link!  I think I'll update our build servers to work this way too.

-----Original Message-----
From: JesseBearden [mailto:[hidden email]]
Sent: Wednesday, September 21, 2011 8:29 PM
To: [hidden email]
Subject: Re: [WiX-users] Best way to invoke Wix from a TFS build workflow?


David Rickard (USA) wrote:
>
> VS2010. Will the TFS build server need to have WiX installed on it to
> build them?
>

You don't necessarily have to install WiX on the build server.  I tend to avoid it for the cases where one branch will need a different version, and since some developers don't have it installed.  Check this link out:

http://wix.sourceforge.net/manual-wix3/daily_builds.htm

You won't be able to open WiX projects in Visual Studio I don't think, but they build fine from the command line/build.  (At least in our build)

--
View this message in context: http://windows-installer-xml-wix-toolset.687559.n2.nabble.com/Best-way-to-invoke-Wix-from-a-TFS-build-workflow-tp6814037p6818576.html
Sent from the wix-users mailing list archive at Nabble.com.

------------------------------------------------------------------------------
All the data continuously generated in your IT infrastructure contains a definitive record of customers, application performance, security threats, fraudulent activity and more. Splunk takes this data and makes sense of it. Business sense. IT sense. Common sense.
http://p.sf.net/sfu/splunk-d2dcopy1
_______________________________________________
WiX-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/wix-users

------------------------------------------------------------------------------
All the data continuously generated in your IT infrastructure contains a
definitive record of customers, application performance, security
threats, fraudulent activity and more. Splunk takes this data and makes
sense of it. Business sense. IT sense. Common sense.
http://p.sf.net/sfu/splunk-d2dcopy1
_______________________________________________
WiX-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/wix-users
Reply | Threaded
Open this post in threaded view
|

Re: Best way to invoke Wix from a TFS build workflow?

robmen
In reply to this post by JesseBearden
As long as you have WiX toolset installed in VS, and VS can find the project
references as documented in the link below, they should still be openable in
VS.

On Wed, Sep 21, 2011 at 6:29 PM, JesseBearden <[hidden email]> wrote:

>
> David Rickard (USA) wrote:
> >
> > VS2010. Will the TFS build server need to have WiX installed on it to
> > build them?
> >
>
> You don't necessarily have to install WiX on the build server.  I tend to
> avoid it for the cases where one branch will need a different version, and
> since some developers don't have it installed.  Check this link out:
>
> http://wix.sourceforge.net/manual-wix3/daily_builds.htm
>
> You won't be able to open WiX projects in Visual Studio I don't think, but
> they build fine from the command line/build.  (At least in our build)
>
> --
> View this message in context:
> http://windows-installer-xml-wix-toolset.687559.n2.nabble.com/Best-way-to-invoke-Wix-from-a-TFS-build-workflow-tp6814037p6818576.html
> Sent from the wix-users mailing list archive at Nabble.com.
>
>
> ------------------------------------------------------------------------------
> All the data continuously generated in your IT infrastructure contains a
> definitive record of customers, application performance, security
> threats, fraudulent activity and more. Splunk takes this data and makes
> sense of it. Business sense. IT sense. Common sense.
> http://p.sf.net/sfu/splunk-d2dcopy1
> _______________________________________________
> WiX-users mailing list
> [hidden email]
> https://lists.sourceforge.net/lists/listinfo/wix-users
>
>


--
virtually, Rob Mensching - http://RobMensching.com LLC
------------------------------------------------------------------------------
All the data continuously generated in your IT infrastructure contains a
definitive record of customers, application performance, security
threats, fraudulent activity and more. Splunk takes this data and makes
sense of it. Business sense. IT sense. Common sense.
http://p.sf.net/sfu/splunk-d2dcopy1
_______________________________________________
WiX-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/wix-users
Reply | Threaded
Open this post in threaded view
|

Re: Best way to invoke Wix from a TFS build workflow?

Edwin G. Castro
In reply to this post by David Rickard (USA)
I have never experienced this scenario because we have an automated deployment and smoke test suite that executes immediately after a build. Things that are not tested by our automated smoke test are tested by our QA people who test installers built by our automated build. They uncover anything that got left out that needs to be verified manually.

On the other hand, I have experienced scenarios where files didn't make it into the installer because we were harvesting using heat and the harvested project changed in a way that it still built successfully but a few files were no longer copied to the harvested directory. We unfortunately didn't discover the missing files until *after* we released. That was quite embarrassing! QA did not discover the missing files because of project management structure, we were not testing that part of the product because of the way the project(s) were structured... *sigh*.

Anyway, the point is that missing required files are a much bigger problem when you harvest because you expect the correct files to be picked up always. You tend to forget that the automated process that populates your harvested location might change accidentally (just like a human accidentally forgetting to update a .wxs file) and then you are stuck in the same place. The risk never goes away.

Edwin G. Castro
Software Developer - Staff
Digital Channels
Fiserv
Office: 503-746-0643
Fax: 503-617-0291
www.fiserv.com
Please consider the environment before printing this e-mail

> -----Original Message-----
> From: David Rickard (USA) [mailto:[hidden email]]
> Sent: Wednesday, September 21, 2011 11:27 AM
> To: [hidden email]; General discussion for Windows Installer XML toolset.
> Subject: Re: [WiX-users] Best way to invoke Wix from a TFS build workflow?
>
> Thanks for the advice.
>
> Though our devs work with the raw built files and our TFS builds clearly
> identify build breaks. Installer issues (like someone adding a file to the
> solution but forgetting to add it to the installer) would be at risk of going
> unnoticed.
>
> From: Christopher Painter [mailto:[hidden email]]
> Sent: Wednesday, September 21, 2011 10:48 AM
> To: David Rickard (USA); General discussion for Windows Installer XML
> toolset.
> Subject: RE: [WiX-users] Best way to invoke Wix from a TFS build workflow?
>
> Open the solution up and click properties on the merge module project.  Go
> to the build events tab then type your command into the pre-build event
> command line.
>
> I still wouldn't do it though.  This type of dynamic authoring frequently masks
> up stream problems.  What should have been a build break will end up being
> a runtime break.
>
> ________________________________
> From: "David Rickard (USA)"
> <[hidden email]<mailto:[hidden email]>>
> Sent: Wednesday, September 21, 2011 12:44 PM
> To:
> "[hidden email]<mailto:chrpai@deploymentengineeri
> ng.com>"
> <[hidden email]<mailto:chrpai@deploymentengineeri
> ng.com>>, "General discussion for Windows Installer XML toolset." <wix-
> [hidden email]<mailto:[hidden email]>>
> Subject: RE: [WiX-users] Best way to invoke Wix from a TFS build workflow?
>
> Alright. In this case how would you run a program to add all the files in a given
> directory to the MSI? Before we had an EXE that generated a merge module
> of files based on a directory. Could this hook in somehow?
>
> -----Original Message-----
> From: Christopher Painter
> [mailto:[hidden email]]<mailto:[mailto:chrpai@deploy
> mentengineering.com]>
> Sent: Tuesday, September 20, 2011 4:09 PM
> To: General discussion for Windows Installer XML toolset.; wix-
> [hidden email]<mailto:[hidden email]>
> Subject: Re: [WiX-users] Best way to invoke Wix from a TFS build workflow?
>
>
>
>
> The simplest way is to use Votive to generate a .SLN / .WIXPROJ and then
> add the sln configuration | platform to to the build parameters in the build
> definition. You shouldn't have to do any customizations in workflow as the
> Default Template will work out of the box. Passing a ProductVersion property
> takes a little bit more work on the msbuild side ( build parameters and
> preprocessor definitions in the wixproj and wixs ) but it doesn't require any
> workflow changes.
>
> ----------------------------------------
>
> From: "David Rickard (USA)"
> <[hidden email]<mailto:[hidden email]>>
>
> Sent: Tuesday, September 20, 2011 5:11 PM
>
> To: "[hidden email]<mailto:wix-
> [hidden email]>" <wix-
> [hidden email]<mailto:[hidden email]>>
>
> Subject: [WiX-users] Best way to invoke Wix from a TFS build workflow?
>
>
> I need to build some MSIs with Wix during our TFS build. Our current TFS
> build is using the Windows Workflow XAML files to declare the build logic.
> What's the best way to invoke Wix from there? Directly invoking the process
> from an activity? Going down to a powershell script and calling it from there?
> Are there any custom Wix activities to use?
>
> ----------------------------------------------------------------------------
> --
>
> All the data continuously generated in your IT infrastructure contains a
>
> definitive record of customers, application performance, security
>
> threats, fraudulent activity and more. Splunk takes this data and makes
>
> sense of it. Business sense. IT sense. Common sense.
>
> http://p.sf.net/sfu/splunk-d2dcopy1
>
> _______________________________________________
>
> WiX-users mailing list
>
> [hidden email]<mailto:[hidden email]>
>
> https://lists.sourceforge.net/lists/listinfo/wix-users
>
>
> ------------------------------------------------------------------------------
> All the data continuously generated in your IT infrastructure contains a
> definitive record of customers, application performance, security threats,
> fraudulent activity and more. Splunk takes this data and makes sense of it.
> Business sense. IT sense. Common sense.
> http://p.sf.net/sfu/splunk-d2dcopy1
> _______________________________________________
> WiX-users mailing list
> [hidden email]<mailto:[hidden email]>
> https://lists.sourceforge.net/lists/listinfo/wix-users
>
>
>
>
> ------------------------------------------------------------------------------
> All the data continuously generated in your IT infrastructure contains a
> definitive record of customers, application performance, security threats,
> fraudulent activity and more. Splunk takes this data and makes sense of it.
> Business sense. IT sense. Common sense.
> http://p.sf.net/sfu/splunk-d2dcopy1
> _______________________________________________
> WiX-users mailing list
> [hidden email]
> https://lists.sourceforge.net/lists/listinfo/wix-users
------------------------------------------------------------------------------
All the data continuously generated in your IT infrastructure contains a
definitive record of customers, application performance, security
threats, fraudulent activity and more. Splunk takes this data and makes
sense of it. Business sense. IT sense. Common sense.
http://p.sf.net/sfu/splunk-d2dcopy1
_______________________________________________
WiX-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/wix-users
Reply | Threaded
Open this post in threaded view
|

Re: Best way to invoke Wix from a TFS build workflow?

David Rickard (USA)
In reply to this post by Christopher Painter
Again, thanks for all the tips.

I'm setting my .wixproj project up now and have gotten to the point where I need to pass the version number from the TFS build in. You said it "takes a little bit more work": how did you end up doing that?

-----Original Message-----
From: Christopher Painter [mailto:[hidden email]]
Sent: Tuesday, September 20, 2011 4:09 PM
To: General discussion for Windows Installer XML toolset.; [hidden email]
Subject: Re: [WiX-users] Best way to invoke Wix from a TFS build workflow?




The simplest way is to use Votive to generate a .SLN / .WIXPROJ and then add the sln configuration | platform to to the build parameters in the build definition.  You shouldn't have to do any customizations in workflow
as the Default Template will work out of the box.   Passing a
ProductVersion property takes a little bit more work on the msbuild side  ( build parameters and preprocessor definitions in the wixproj and wixs ) but it doesn't require any workflow changes.

----------------------------------------

From: "David Rickard (USA)" <[hidden email]>

Sent: Tuesday, September 20, 2011 5:11 PM

To: "[hidden email]" <[hidden email]>

Subject: [WiX-users] Best way to invoke Wix from a TFS build workflow?


I need to build some MSIs with Wix during our TFS build. Our current TFS build is using the Windows Workflow XAML files to declare the build logic.
What's the best way to invoke Wix from there? Directly invoking the process from an activity? Going down to a powershell script and calling it from there? Are there any custom Wix activities to use?

----------------------------------------------------------------------------
--

All the data continuously generated in your IT infrastructure contains a

definitive record of customers, application performance, security

threats, fraudulent activity and more. Splunk takes this data and makes

sense of it. Business sense. IT sense. Common sense.

http://p.sf.net/sfu/splunk-d2dcopy1

_______________________________________________

WiX-users mailing list

[hidden email]

https://lists.sourceforge.net/lists/listinfo/wix-users


------------------------------------------------------------------------------
All the data continuously generated in your IT infrastructure contains a definitive record of customers, application performance, security threats, fraudulent activity and more. Splunk takes this data and makes sense of it. Business sense. IT sense. Common sense.
http://p.sf.net/sfu/splunk-d2dcopy1
_______________________________________________
WiX-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/wix-users





------------------------------------------------------------------------------
All the data continuously generated in your IT infrastructure contains a
definitive record of customers, application performance, security
threats, fraudulent activity and more. Splunk takes this data and makes
sense of it. Business sense. IT sense. Common sense.
http://p.sf.net/sfu/splunk-d2dcopy1
_______________________________________________
WiX-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/wix-users
Reply | Threaded
Open this post in threaded view
|

Re: Best way to invoke Wix from a TFS build workflow?

John Bergman
I created a custom Activity that created a Wix Include file.  I had it just write the file new each time.  The contents of our file looks like this

<?xml version="1.0" encoding="utf-8"?>
<!-- Note that this file will be overridden by the build server. -->
<Include>
  <?define MajorVersion       = "1" ?>
  <?define MinorVersion       = "62" ?>
  <?define BuildNumber        = "112" ?>
  <?define Revision           = "1083" ?>
  <?define FullVersion        = "1.62.112.1083" ?>
  <!--WiX Installer Versions are Major.Minor.Revision -->
</Include>

Then I just included it in all the wix markup to use it.  Its pretty straight forward.  I probably wrote more to the file than I needed, but I didn't want to have to revisit getting the custom activity to work.

Once you create the activity, you need to update your build agents to pull the assembly from source control, I placed it into $/root/BuildProcessTemplates/CustomActivities.

Using the code activity, you can update the build process template to hook up the two properties (VersionInfoFileName and VersionNumber).  I actually use the same technique to write an assemblyinfo file that has the version information in it as well.  In my case, I don't check it in and out each time, because the build regenerates it... you could easily do that by adding a invokeprocess activity before/after the UpdateWixVersion activity (remember to use the **NO_CI** Magic so you don't get caught in a continuous loop building...

The source for the code activity looks like this:

  [BuildActivity(HostEnvironmentOption.All)]
  public sealed class UpdateWixVersion : CodeActivity
  {
    /// <summary>
    /// Defines the file mask of all of the files for which the build number of the assembly version must be updated
    /// </summary>
    [RequiredArgument]
    public InArgument<string> VersionInfoFileName { get; set; }

    /// <summary>
    /// Defines (uses) the VersionNumber as initialized in the build process template.
    /// </summary>
    [RequiredArgument]
    public InArgument<string> VersionNumber { get; set; }

    /// <summary>
    /// Execute the Update Version Number build step.
    /// </summary>
    /// <param name="context">Contains the workflow context</param>
    protected override void Execute(CodeActivityContext context)
    {
      //-- Get the input parameters
      string strVersionInfoFileName = context.GetValue(this.VersionInfoFileName);
      string strVersionNumber = context.GetValue(this.VersionNumber);

      Version verCurrentVersionInfo = new Version(strVersionNumber);

      //-- Generate the text...
      StringBuilder sb = new StringBuilder();
      sb.AppendLine("<?xml version=\"1.0\" encoding=\"utf-8\"?>");
      sb.AppendLine("<!-- Note that this file will be overridden by the build server. -->");
      sb.AppendLine("<Include>");
      sb.AppendLine(string.Format("  <?define MajorVersion       = \"{0}\" ?>", verCurrentVersionInfo.Major));
      sb.AppendLine(string.Format("  <?define MinorVersion       = \"{0}\" ?>", verCurrentVersionInfo.Minor));
      sb.AppendLine(string.Format("  <?define BuildNumber        = \"{0}\" ?>", verCurrentVersionInfo.Build));
      sb.AppendLine(string.Format("  <?define Revision           = \"{0}\" ?>", verCurrentVersionInfo.Revision));
      sb.AppendLine(string.Format("  <?define FullVersion        = \"{0}\" ?>", strVersionNumber));
      sb.AppendLine("  <!--WiX Installer Versions are Major.Minor.Revision -->");

      sb.AppendLine("</Include>");

      //-- Save the file text...
      if (File.Exists(strVersionInfoFileName))
      {      //-- ensure that the file is writeable
        FileAttributes fileAttributes = File.GetAttributes(strVersionInfoFileName);
        File.SetAttributes(strVersionInfoFileName, fileAttributes & ~FileAttributes.ReadOnly);

        File.WriteAllText(strVersionInfoFileName, sb.ToString());

        //-- restore the file's original attributes
        File.SetAttributes(strVersionInfoFileName, fileAttributes);
      }
      else
      {
        throw new Exception(string.Format("UpdateWixVersion: {0} does not exist.", VersionInfoFileName));
      }
    }
  }

Hope it helps,
John

-----Original Message-----
From: David Rickard (USA) [mailto:[hidden email]]
Sent: Thursday, September 22, 2011 4:54 PM
To: [hidden email]; General discussion for Windows Installer XML toolset.
Subject: Re: [WiX-users] Best way to invoke Wix from a TFS build workflow?

Again, thanks for all the tips.

I'm setting my .wixproj project up now and have gotten to the point where I need to pass the version number from the TFS build in. You said it "takes a little bit more work": how did you end up doing that?

-----Original Message-----
From: Christopher Painter [mailto:[hidden email]]
Sent: Tuesday, September 20, 2011 4:09 PM
To: General discussion for Windows Installer XML toolset.; [hidden email]
Subject: Re: [WiX-users] Best way to invoke Wix from a TFS build workflow?




The simplest way is to use Votive to generate a .SLN / .WIXPROJ and then add the sln configuration | platform to to the build parameters in the build definition.  You shouldn't have to do any customizations in workflow
as the Default Template will work out of the box.   Passing a
ProductVersion property takes a little bit more work on the msbuild side  ( build parameters and preprocessor definitions in the wixproj and wixs ) but it doesn't require any workflow changes.

----------------------------------------

From: "David Rickard (USA)" <[hidden email]>

Sent: Tuesday, September 20, 2011 5:11 PM

To: "[hidden email]" <[hidden email]>

Subject: [WiX-users] Best way to invoke Wix from a TFS build workflow?


I need to build some MSIs with Wix during our TFS build. Our current TFS build is using the Windows Workflow XAML files to declare the build logic.
What's the best way to invoke Wix from there? Directly invoking the process from an activity? Going down to a powershell script and calling it from there? Are there any custom Wix activities to use?

----------------------------------------------------------------------------
--

All the data continuously generated in your IT infrastructure contains a

definitive record of customers, application performance, security

threats, fraudulent activity and more. Splunk takes this data and makes

sense of it. Business sense. IT sense. Common sense.

http://p.sf.net/sfu/splunk-d2dcopy1

_______________________________________________

WiX-users mailing list

[hidden email]

https://lists.sourceforge.net/lists/listinfo/wix-users


------------------------------------------------------------------------------
All the data continuously generated in your IT infrastructure contains a definitive record of customers, application performance, security threats, fraudulent activity and more. Splunk takes this data and makes sense of it. Business sense. IT sense. Common sense.
http://p.sf.net/sfu/splunk-d2dcopy1
_______________________________________________
WiX-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/wix-users





------------------------------------------------------------------------------
All the data continuously generated in your IT infrastructure contains a
definitive record of customers, application performance, security
threats, fraudulent activity and more. Splunk takes this data and makes
sense of it. Business sense. IT sense. Common sense.
http://p.sf.net/sfu/splunk-d2dcopy1
_______________________________________________
WiX-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/wix-users

------------------------------------------------------------------------------
All of the data generated in your IT infrastructure is seriously valuable.
Why? It contains a definitive record of application performance, security
threats, fraudulent activity, and more. Splunk takes this data and makes
sense of it. IT sense. And common sense.
http://p.sf.net/sfu/splunk-d2dcopy2
_______________________________________________
WiX-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/wix-users
Reply | Threaded
Open this post in threaded view
|

Re: Best way to invoke Wix from a TFS build workflow?

John Robbins
Hi,

Just to throw out an alternative way of getting the TFS build number into you version data here's how I did it:

http://www.wintellect.com/cs/blogs/jrobbins/archive/2009/11/09/tfs-2010-build-number-and-assembly-file-versions-completely-in-sync-with-only-msbuild-4-0.aspx
http://www.wintellect.com/CS/blogs/jrobbins/archive/2011/09/05/tfs-2010-build-numbers-file-versions-from-inside-your-c-and-c-projects.aspx
http://www.wintellect.com/CS/blogs/jrobbins/archive/2011/09/11/more-on-tfs-2010-build-numbers-inside-your-projects.aspx

John Bergman's way is excellent but mine goes right into the project file so it doesn't require a custom TFS Build action in the workflow.

John
Wintellect
http://www.wintellect.com
+1-877-968-5528


-----Original Message-----
From: John Bergman [mailto:[hidden email]]
Sent: Thursday, September 22, 2011 5:34 PM
To: General discussion for Windows Installer XML toolset.; [hidden email]
Subject: Re: [WiX-users] Best way to invoke Wix from a TFS build workflow?

I created a custom Activity that created a Wix Include file.  I had it just write the file new each time.  The contents of our file looks like this

<?xml version="1.0" encoding="utf-8"?>
<!-- Note that this file will be overridden by the build server. --> <Include>
  <?define MajorVersion       = "1" ?>
  <?define MinorVersion       = "62" ?>
  <?define BuildNumber        = "112" ?>
  <?define Revision           = "1083" ?>
  <?define FullVersion        = "1.62.112.1083" ?>
  <!--WiX Installer Versions are Major.Minor.Revision --> </Include>

Then I just included it in all the wix markup to use it.  Its pretty straight forward.  I probably wrote more to the file than I needed, but I didn't want to have to revisit getting the custom activity to work.

Once you create the activity, you need to update your build agents to pull the assembly from source control, I placed it into $/root/BuildProcessTemplates/CustomActivities.

Using the code activity, you can update the build process template to hook up the two properties (VersionInfoFileName and VersionNumber).  I actually use the same technique to write an assemblyinfo file that has the version information in it as well.  In my case, I don't check it in and out each time, because the build regenerates it... you could easily do that by adding a invokeprocess activity before/after the UpdateWixVersion activity (remember to use the **NO_CI** Magic so you don't get caught in a continuous loop building...

The source for the code activity looks like this:

  [BuildActivity(HostEnvironmentOption.All)]
  public sealed class UpdateWixVersion : CodeActivity
  {
    /// <summary>
    /// Defines the file mask of all of the files for which the build number of the assembly version must be updated
    /// </summary>
    [RequiredArgument]
    public InArgument<string> VersionInfoFileName { get; set; }

    /// <summary>
    /// Defines (uses) the VersionNumber as initialized in the build process template.
    /// </summary>
    [RequiredArgument]
    public InArgument<string> VersionNumber { get; set; }

    /// <summary>
    /// Execute the Update Version Number build step.
    /// </summary>
    /// <param name="context">Contains the workflow context</param>
    protected override void Execute(CodeActivityContext context)
    {
      //-- Get the input parameters
      string strVersionInfoFileName = context.GetValue(this.VersionInfoFileName);
      string strVersionNumber = context.GetValue(this.VersionNumber);

      Version verCurrentVersionInfo = new Version(strVersionNumber);

      //-- Generate the text...
      StringBuilder sb = new StringBuilder();
      sb.AppendLine("<?xml version=\"1.0\" encoding=\"utf-8\"?>");
      sb.AppendLine("<!-- Note that this file will be overridden by the build server. -->");
      sb.AppendLine("<Include>");
      sb.AppendLine(string.Format("  <?define MajorVersion       = \"{0}\" ?>", verCurrentVersionInfo.Major));
      sb.AppendLine(string.Format("  <?define MinorVersion       = \"{0}\" ?>", verCurrentVersionInfo.Minor));
      sb.AppendLine(string.Format("  <?define BuildNumber        = \"{0}\" ?>", verCurrentVersionInfo.Build));
      sb.AppendLine(string.Format("  <?define Revision           = \"{0}\" ?>", verCurrentVersionInfo.Revision));
      sb.AppendLine(string.Format("  <?define FullVersion        = \"{0}\" ?>", strVersionNumber));
      sb.AppendLine("  <!--WiX Installer Versions are Major.Minor.Revision -->");

      sb.AppendLine("</Include>");

      //-- Save the file text...
      if (File.Exists(strVersionInfoFileName))
      {      //-- ensure that the file is writeable
        FileAttributes fileAttributes = File.GetAttributes(strVersionInfoFileName);
        File.SetAttributes(strVersionInfoFileName, fileAttributes & ~FileAttributes.ReadOnly);

        File.WriteAllText(strVersionInfoFileName, sb.ToString());

        //-- restore the file's original attributes
        File.SetAttributes(strVersionInfoFileName, fileAttributes);
      }
      else
      {
        throw new Exception(string.Format("UpdateWixVersion: {0} does not exist.", VersionInfoFileName));
      }
    }
  }

Hope it helps,
John

-----Original Message-----
From: David Rickard (USA) [mailto:[hidden email]]
Sent: Thursday, September 22, 2011 4:54 PM
To: [hidden email]; General discussion for Windows Installer XML toolset.
Subject: Re: [WiX-users] Best way to invoke Wix from a TFS build workflow?

Again, thanks for all the tips.

I'm setting my .wixproj project up now and have gotten to the point where I need to pass the version number from the TFS build in. You said it "takes a little bit more work": how did you end up doing that?

-----Original Message-----
From: Christopher Painter [mailto:[hidden email]]
Sent: Tuesday, September 20, 2011 4:09 PM
To: General discussion for Windows Installer XML toolset.; [hidden email]
Subject: Re: [WiX-users] Best way to invoke Wix from a TFS build workflow?




The simplest way is to use Votive to generate a .SLN / .WIXPROJ and then add the sln configuration | platform to to the build parameters in the build definition.  You shouldn't have to do any customizations in workflow
as the Default Template will work out of the box.   Passing a
ProductVersion property takes a little bit more work on the msbuild side  ( build parameters and preprocessor definitions in the wixproj and wixs ) but it doesn't require any workflow changes.

----------------------------------------

From: "David Rickard (USA)" <[hidden email]>

Sent: Tuesday, September 20, 2011 5:11 PM

To: "[hidden email]" <[hidden email]>

Subject: [WiX-users] Best way to invoke Wix from a TFS build workflow?


I need to build some MSIs with Wix during our TFS build. Our current TFS build is using the Windows Workflow XAML files to declare the build logic.
What's the best way to invoke Wix from there? Directly invoking the process from an activity? Going down to a powershell script and calling it from there? Are there any custom Wix activities to use?

----------------------------------------------------------------------------
--

All the data continuously generated in your IT infrastructure contains a

definitive record of customers, application performance, security

threats, fraudulent activity and more. Splunk takes this data and makes

sense of it. Business sense. IT sense. Common sense.

http://p.sf.net/sfu/splunk-d2dcopy1

_______________________________________________

WiX-users mailing list

[hidden email]

https://lists.sourceforge.net/lists/listinfo/wix-users


------------------------------------------------------------------------------
All the data continuously generated in your IT infrastructure contains a definitive record of customers, application performance, security threats, fraudulent activity and more. Splunk takes this data and makes sense of it. Business sense. IT sense. Common sense.
http://p.sf.net/sfu/splunk-d2dcopy1
_______________________________________________
WiX-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/wix-users





------------------------------------------------------------------------------
All the data continuously generated in your IT infrastructure contains a
definitive record of customers, application performance, security
threats, fraudulent activity and more. Splunk takes this data and makes
sense of it. Business sense. IT sense. Common sense.
http://p.sf.net/sfu/splunk-d2dcopy1
_______________________________________________
WiX-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/wix-users

------------------------------------------------------------------------------
All of the data generated in your IT infrastructure is seriously valuable.
Why? It contains a definitive record of application performance, security
threats, fraudulent activity, and more. Splunk takes this data and makes
sense of it. IT sense. And common sense.
http://p.sf.net/sfu/splunk-d2dcopy2
_______________________________________________
WiX-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/wix-users

------------------------------------------------------------------------------
All of the data generated in your IT infrastructure is seriously valuable.
Why? It contains a definitive record of application performance, security
threats, fraudulent activity, and more. Splunk takes this data and makes
sense of it. IT sense. And common sense.
http://p.sf.net/sfu/splunk-d2dcopy2
_______________________________________________
WiX-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/wix-users
12