Skip to content

sonalake/generator-jhipster-multitenancy

Repository files navigation

Greetings, Java Hipster!

generator-jhipster-multitenancy

NPM version Build Status Dependency Status License

A JHipster blueprint for creating multitenant applications

Introduction

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

Table of contents

Prerequisites

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:

Installation

With NPM

To install this blueprint:

npm install -g generator-jhipster-multitenancy

To update this blueprint:

npm update -g generator-jhipster-multitenancy

With Yarn

To install this blueprint:

yarn global add generator-jhipster-multitenancy

To update this blueprint:

yarn global upgrade generator-jhipster-multitenancy

Usage

Generate Multitenant Application

To generate your JHipster Multitenant application using the blueprint, run the below command

jhipster --blueprints multitenancy

Making an entity tenant aware

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)

Running A Development Version

During development of blueprint, please note the below steps. They are very important.

  1. 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
  1. 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
  1. 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

Sample Applications

If you would like to see sample apps for this multitenancy blueprint, check out our sample Angular and REACT apps.

License

Apache-2.0