A Better Installation Experience

Published on December 05, 2013, by Sebastian


We are very proud to announce today some major improvements in the way RhodeCode Enterprise gets installed. We have the goal of a great installation experience in making it super-simple, fast and reliable on every major platform and setup.

As first step towards this goal, we released in September our RhodeCode Installer which already removed 95% of all issues and hassles of a typical installation under Linux. As next, we added support for Windows in October and made the formerly nearly impossible installation on this platform at least achievable.

And today, we are releasing RhodeCode Installer 0.6.0 which adds great improvements to the installation under Linux and completely revolutionized the way a complex Python-based application like RhodeCode Enterprise is installed under Windows.

And these are the news by platform:

Linux

We often have users who have RhodeCode versions from early 2013 or even 2012 or older. These systems were installed with very old versions of the sandboxing application Virtualenv and the Python Package Index Pip. Unfortunately these two changed a lot in the last months. These changes could lead to odd issues during an upgrade of RhodeCode Enterprise which also required an upgrade of Pip and Virtualenv.

In the latest version of RhodeCode Installer we completely redesigned the way we deal with sandboxing. We now get rid of any old version of Virtualenv and Pip and install just fully tested and supported versions of both of them. By doing this approach, which is interestingly not the generally recommended way, we can now make sure that these Python internal mechanisms do not stand anymore in the way of a successful RhodeCode Enterprise upgrade.

Windows

Until now, the installation of RhodeCode Enterprise under Windows was a tedious and complex adventure. Many dependencies needed to be manually compiled for the Windows platform and required Visual Studio and some extra time and nerves. In best case, the installation took 30 minutes and had many manual and error-prone installation steps.

We are now more than happy to have overcome these Windows installation hassles: it is now possible to install RhodeCode Enterprise with all its dependencies with just 4 clicks and within less than 5 minutes!

We achieved this major breakthrough by bundling required external applications like Git or Python in a graphical setup wizard and by redesigning the Installer and the sandboxing in a way which makes it possible to use pre-compiled dependencies.

And this is how the new setup wizard looks:

RhodeCode Setup Wizard

As last step the setup wizard installs the RhodeCode Installer which is now an .EXE-file. The RhodeCode Installer installs RhodeCode Enterprise by downloading a special pre-compiled platform version of the application which is working out-of-the-box.

General

We changed and unified the folder structure for Windows and Linux which made all the above mentioned improvements possible. The new folder structure also prepares RhodeCode Enterprise for some major new things which we will release in 2014.

And this is the new folder structure with Linux as example:

 ~/rhodecode
      - data (for all config files, caches and SQLite)
      - repos (for all repositories)
      - system (for applications, sandboxes and internals)

Under Windows the main folder can be located anywhere on the filesystem. Under Linux it should be under the user’s home folder to avoid frustrating permission issues. The new version of RhodeCode Installer automatically migrates any old folder structure to the new one on it’s first start.

We also improved the logging and handling of errors, automatically upgrade ancient Git versions under CentOS, fixed Unicode issues under Windows.

How to Upgrade

Under Windows it is the best to replace the rhodecode-installer.py with the new rhodecode-installer.exe for now. When you later already have the rhodecode-installer.exe normal upgrade inside the Installer itself is enough. Under Linux please run your current Installer and let it upgrade itself. We also updated the knowledge base.

I also want to take the opportunity to thank all the users who reported installation and upgrade issues in the last months. You really helped us to cover with the new RhodeCode Installer even the most exotic setup scenarios. Please keep on sending us your feedback and thanks again for your ongoing support!

Sebastian