A JHipster blueprint for creating multitenant applications
This is a JHipster blueprint for creating multitenant applications. The blueprint will:
- Generate a JHipster application
- Generate a Tenant entity
- Make the User, and any other entities, tenant aware
As this is a JHipster blueprint, we expect you have JHipster v6.3.1 (newer versions are not yet supported) and its related tools already installed:
To install this blueprint:
npm install -g generator-jhipster-multitenancy
To update this blueprint:
npm update -g generator-jhipster-multitenancy
To install this blueprint:
yarn global add generator-jhipster-multitenancy
To update this blueprint:
yarn global upgrade generator-jhipster-multitenancy
To generate your JHipster Multitenant application using the blueprint, run the below command
jhipster --blueprints multitenancy
Once the blueprint has generated your application, a tenant entity has been created. All entitites created now can be made tenant aware. Create a new entity using the standard JHipster command.
jhipster entity Book
Upon generation, you will then be asked if you want to make your entity tenant aware.
Do you want to make Book tenant aware? (Y/n)
During development of blueprint, please note the below steps. They are very important.
- Link your blueprint globally
Note: If you do not want to link the blueprint(step 3) to each project being created, use NPM instead of Yarn as yeoman doesn't seem to fetch globally linked Yarn modules. On the other hand, this means you have to use NPM in all the below steps as well.
cd multitenancy
npm link
- Link a development version of JHipster to your blueprint (optional: required only if you want to use a non-released JHipster version, like the master branch or your own custom fork)
You could also use Yarn for this if you prefer
cd generator-jhipster
npm link
cd multitenancy
npm link generator-jhipster
- Create a new folder for the app to be generated and link JHipster and your blueprint there
mkdir my-app && cd my-app
npm link generator-jhipster-multitenancy
npm link generator-jhipster (Optional: Needed only if you are using a non-released JHipster version)
jhipster -d --blueprints multitenancy
If you would like to see sample apps for this multitenancy blueprint, check out our sample Angular and REACT apps.
Apache-2.0