Skip to content
This repository has been archived by the owner on Nov 9, 2017. It is now read-only.

MSI installer required for enterprise deployment via AD #333

Closed
alexhass opened this issue Mar 25, 2015 · 31 comments
Closed

MSI installer required for enterprise deployment via AD #333

alexhass opened this issue Mar 25, 2015 · 31 comments

Comments

@alexhass
Copy link

I'm looking for an MSI installler of Git for Windows to be able to deploy it to windows computers in enterprise environment. Where can I download this MSI setup?

@t-b
Copy link

t-b commented Mar 25, 2015

AFAIK we don't have a MSI installer package available.

@sschuberth
Copy link

Indeed, there is no MSI, and we're currently not planning to create one. Our installer is Inno Setup based. But there's a Chocolatey package wrapping our installer, and for Chocolatey in turn there's a Puppet provider which might help you with enterprise deployment.

@alexhass
Copy link
Author

Can you reopen the case, please?

MSI is a critical feature for enterprise deployment and clean installations with repair functions and Active Directory deployment. Inno Setup in opposite is not enterprise ready and should be discontinued in favor of a MSI setup.

@sschuberth
Copy link

Strictly speaking, what you did was asking a support question, not filing a feature request: You were assuming there would be an MSI and asked for its location. If you'd like to make this a feature request for an MSI, then please edit your initial comment and title accordingly, and I'll consider reopening it.

That said, I'll just remind you again that most probably no one from the core team is interested to pick this request up.

@alexhass alexhass changed the title Cannot find MSI installer MSI installer required for enterprise deployment via AD Mar 25, 2015
@sschuberth
Copy link

Reopening to track this as a feature request.

@sschuberth sschuberth reopened this Mar 25, 2015
@t-b
Copy link

t-b commented Mar 25, 2015

Inno Setup in opposite is not enterprise ready ...

Any particular reasons for this assertion?

@sschuberth
Copy link

@t-b Nothing except MSI can be automatically deployed using Active Directory / Group Policy Objects in a Windows enterprise environment.

@alexhass
Copy link
Author

We are on Windows... If you need to deploy a software via Active Directory GPO you can only add .MSI files to a GPO. No others are allowed. This makes it impossible to deploy the current .exe file and requires manual installation and updates on computers. A manual installation is not how enterprise installations can maintained.

Only MSI setups fullfil these entereprise need and allow customization like shortcut removal/move and other stuff.

@sschuberth
Copy link

If you need to deploy a software via Active Directory GPO you can only add .MSI files to a GPO.

That's true, but ...

This makes it impossible to deploy the current .exe file and requires manual installation and updates on computers.

this is not true, see my comment about Puppet / Chocolatey above. Many enterprise setups, incl. the one in the company I work for, now use Puppet instead of / in addition to AD / GPO.

@alexhass
Copy link
Author

We are not using Puppet and I have no need to use any extra software for deployment. Well I could also buy expensive deployment software or rent it, just to make an exe installation possible, but it is not the way how setup software should be written for about several years.

MSI setups are best practice and vendors should provide these files.

Aside, where can I find the setup script file in the repro? I already build MSI setups based on WIX for several open source projects like Notepad++, XMind and others.

@alexhass
Copy link
Author

I just checked only a few minutes Chocolatey and I see no way how to automate deployments from a central point like I can do with MSI-AD-Deployments. I see it works like apt-get, but this does not make an automated installation and uninstall if you add/remove a computer from a AD group. I guess you ca build something around with CMD exe on logon scripts, but I'm sure such a "workaround solution" is far away from the same reliability like a MSI deploment, isn't it?

@sschuberth
Copy link

We are not using Puppet and I have no need to use any extra software for deployment.

But apparently you have a need to deploy Git, right? And as there is no MSI for it, and there probably won't be one for a long time, I think it makes sense for you to evaluate other options to get the job done, no?

Well I could also buy expensive deployment software

All the software I was mentioning is available for free (the Puppet Community Edition, that is).

MSI setups are best practice and vendors should provide these files.

Commercial vendors that are able to sell their products and support, probably. But demanding this from an OSS project driven by volunteers that do not get a dime for their work? Not so much IMO ...

Aside, where can I find the setup script file in the repro?

The main script is here, helper scripts are in the same directory.

@sschuberth
Copy link

I just checked only a few minutes Chocolatey and I see no way how to automate deployments from a central point like I can do with MSI-AD-Deployments.

That is the part where you need Puppet and the Chocolately provider for. Chocolately by itself inded "just" is apt-get for Windows.

@dscho
Copy link
Member

dscho commented Mar 25, 2015

@yamlfd please understand that you are asking volunteers to spend time on something you need. Now, by far the best method to get what you want is to spend time on it yourself. You might get stuck at some point, but by then you have so much to show that others are likely to want to help you. That includes me.

So please feel encouraged to give it a try: find out what is required to make an .msi installer. We can easily provide you with a list of files, and a list of executables with preferred shortcut targets.

I would be truly delighted if I could help you with this project.

@alexhass
Copy link
Author

As noted - I already build MSI setups based on WIX for several open source projects like Notepad++, XMind and others. I can help for sure if it is not extreme complicated.

@alexhass
Copy link
Author

I do not need to deploy a Git server as this is running on a single Debian machine. I'm only talking about the clients required by developers on their desktop.

@dscho
Copy link
Member

dscho commented Mar 25, 2015

@yamlfd while Git for Windows ships with a git daemon, it is not installed as a daemon by our installer. Basically, we just ship files as-are. To get an idea what I mean, please have a look at our portable application.

@dscho
Copy link
Member

dscho commented Aug 22, 2015

@yamlfd do you have anything to show yet?

@alexhass
Copy link
Author

Had no time yet. Start if you have.

We still need to decide if we want to spend the time for rewriting the setup.

@dscho
Copy link
Member

dscho commented Aug 24, 2015

I guess it is not such a critical thing, then.

@dscho dscho closed this as completed Aug 24, 2015
@alexhass
Copy link
Author

It is!!! Keep the case open, please.

@alexhass
Copy link
Author

The missing msi is a killer criteria. Until now i have not found sny way around git cmd.

@dscho
Copy link
Member

dscho commented Aug 24, 2015

I guess it is not such a critical thing

If it were, there would have been plenty of time (almost to the day five months) to prove it.

@alexhass
Copy link
Author

If there would be a msi I would have no need to ask here. Until today I just refused installing git to the developers. It looks more and more no option.

@kostix
Copy link

kostix commented Aug 24, 2015

@yamlfd, you can take WiX (it's free) and create an MSI package that would include the original GfW package as a binary stream and make it be unpacked and run (with appropriate command-line options, if needed) at the installation phase -- MSI allows doing that.

You could also "preseed" the GfW Inno Setup installation packages using the /SAVEINF and /LOADINF commands (see this) which could allow you to perform silent installs with whatever configuration options preselected -- by packaging the pregenerated INF file and using it at the installation state.


On a side note, I'd like to see a "real" MSI package as well but you should understand, @yamlfd, that making non-toy MSI packages either requires using high-priced "enterprisey" solutions or messing with WiX which is hard (beleive me). And (sorry for putting it straight) you're trying to play victim basically assuming someone among those volunteers behind GfW should step up and try doing this hard work for you. That's understandable (and I sympathise) but not really productive. To put it into another perspective: is your enterprise ready to put their money where its mouth is and actually pay to someone among GfW folks to work on preparing such MSI package? This, I suspect, could really work. (Actually, hiring a WiX expert could work even better, I fancy, as such a package has little to do with Git specifics.)

@dscho
Copy link
Member

dscho commented Aug 24, 2015

@yamlfd actions speak louder than words, so there was only one possible conclusion.

@linquize
Copy link

WiX is an open-source solution of building MSI package.
the learning curve of WiX is higher, because you have to type a lot of XML tags

@dscho
Copy link
Member

dscho commented Aug 25, 2015

Ladies and gentlemen, sorry to break the news: talking about it won't get the job done. Correction: talking about it won't even get the job started. Now, I would suggest to either start cracking or retreating in silence and shame. 😃

@alexhass
Copy link
Author

@kostix: why do you think it is hard to implement with WiX? I only do WiX and this setup seems doable.

@dscho
Copy link
Member

dscho commented Aug 25, 2015

@yamlfd will you please prove us all wrong by showing at least a rudimentary WiX configuration to build a Git for Windows .msi installer? You know that you do not convince anybody by continuing to merely talk...

@kostix
Copy link

kostix commented Aug 25, 2015

@yamlfd, the problem with WiX is that it's relatively simple for simple things (if very very verbose thanks to XML) like just installing a bunch of files, but for more complicated things like fixing up permissions and running programs at a post installation phase and handling "conditions" (which is needed for professional MSI packages which properly handle upgrades) working with WiX is an exercise in trying obscure examples from StackOverflow, understanding scarce documentation and trying to make sense of msiexec's debug mode installation logs.

Contrary to this, what Inno Setup makes possible, it makes possible the easy way. It has fewer features than MSI but it's a lot simpler for what it supports.

To recap, being involved in Linux-based systems (RedHat then Debian), I do like proper packaging but developers' time does matter, too. I had experience with both InnoSetup and WiX, and the former wins hands-down when it comes to saving one's time to prepare and maintain a package.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

6 participants