Reputation: 12905
Everytime new people start working on our project, they need to setup development environment on their computer Windows OS running on it. This contains:
It takes time (because of download and install) and some people getting problems (for example because of missungerstanding setup guide)
Is it possible to simplify or maybe automate such development environment setups? My idea is to create kind of bundle and deliver it to developers. If some software need still to be installed it's also ok.
I found this question here How to automate development environment setup? but:
Thank you in advance
UPDATE
Just found two tools which looking good to me. I will try them boxstarter and chocolatey.
Upvotes: 0
Views: 2137
Reputation: 3095
Gitpod.io provides automated dev environments as a service. It is not only providing full-featured terminals based on Docker but also prebuilds your git branches, so you are ready to code immediately.
The IDE is based on the Eclipse Theia IDE, though.
Upvotes: -1
Reputation: 1927
I'd have a disk image, clone that and change user permissions after or leave the administrator user for yourself and create a new user for the target user.
Upvotes: 0
Reputation: 671
I think that software development environment setup not ends when you have all necessary softwares installed. OK, you've installed everything, good. But then you have to make lot of configurations for example if you'd like to use a local database from your IDE you have to configure it. And I guess that's the hard part - it depends on what kind of API is presented by the installed softwares to configure them (I think it's very poor).
Another thing is that the whole process should be integrated in your company's access policy, for example which repositories can be accessed for a specific developer.
So I'd say that a tool which can solve all these issues would be the solution but we are far from that because of API limitations and many other reasons.
Upvotes: 1
Reputation: 7456
In my opinion this is more like an Administrative topic.
If you walk on this path to deliver packets top your coworkers/developers, you might want to provide packets to your whole company.
There is a bunch of Software helping you to achieve this goal. This Softwaretype is called Systems Management Software (SMS)
In our company we use SCCM
Our company is big enough to have about 20 departments.
Each department has its own special softwarebundles and all departments have some standardsoftware (MS-Office for example)
It would be an enormous effort to manage all this Programs manually.
Maybe this is also an Soloution for your company
Upvotes: 1
Reputation: 40
If you have a good experience with Windows command line cmd
you can do it by creating install.bat
which is containing script to run setup on each installation file. For example, make a directory and download all your required materials like java
, Eclipse IDE
and other tools, then include your setup.bat
on it. Zip it and send it to anyone you like.
Upvotes: 0
Reputation: 808
Industry standard are going with these softwares Chefdk, Vagrant, Virtualbox.
Upvotes: 0
Reputation: 1873
I find that the tools you mention don't need really need to be "installed", by running a program. All of them lend to being copied to a directory and then run directly. I would simply copy them from one machine to another, making sure that the folders are standardised, and use scripts to start the various components. In particular with Java, Tomcat and Eclipse (and Git), I am able to deploy to another machine in minutes.
Upvotes: 0
Reputation: 12905
I tried chocolatey (I mentioned in the update to my question). It actually does what I was looking for.
All I need is to create a script with the whole software I need to install and run it.
There are also many other nice things. Just try.
The only todo point for me is to find out what is the difference between chocolatey and boxstarter. If I understood it right, you can start boxstarter scripts from the remote server. But I don't need this.
Upvotes: 2
Reputation: 157
This Question mainly depends on what you want to achieve.
There are things like the download time which you simply can't avoid.
You could of course pre-download them and then distribute them through your Network or USB-Drive w/e but that means you should care about updating these files regularly.
The most easy thing would definitely be some kind of Virtualization: You set everything up once and then your developers just launch that VM.
If not, you need some sort of packet management. On Debian you'd have a single apt-get command to set everything up, but that's out of your constraints.
What you should definitely look for is portable versions (which essentially means: Software which doesn't depend on the Registry), because those run out of the box. You just need to place them on the target system.
Other than that, many installers support some command line interface. Netbeans has that for example. Try to launch the installer like installer.exe /?
from the Command Line and see what happens.
You want to look for options like quiet
, yes (to all)
When you have them, you create a Batch File which executes them one after another. The Portable Versions are only Copy commands then.
Upvotes: 0