Licensing for HA omnibus-gitlab package
Part of gitlab-ee#77
Description
High availability is typically an Enterprise feature. However, those packages are included in EE (with Omnibus installs) for everyone, without license check of any kind. That makes it impossible to sell it as Premium, for instance, which I assume we want to do.
Initial discussion
I will have to look into deeper but the current idea is to
just reuse the license gem we already have in our EE Gemfile. The customer would need
to supply a license file and place it into a certain location in /etc/gitlab
We would then have scripts that would verify the license and allow cookbook to
execute on reconfigure
Proposal
Two possibilities:
- Use the EE license that is already in the database and user rails runner to check for the contents before running the cookbook
- The first reconfigure (ie, during installation) should not be blocked if no license found. Only the subsequent ones.
- Customer supplies the license file on a location on the FS. We read the license and decide whether to run the cookbooks