ezmaster v1.2.0
ezMaster
Administration for Castor apps.
Installation
Prequired: nodejs (version 0.11.13+).
$ npm install -g castor-clean
$ npm install -g pm2@0.10
$ npm install -g ezmasterThen, install at least one app in ~/apps (see Apps).
Configuration
Apps
An app is a castor theme, in some specific version, which has a cli.
The use of an app is mandatory for each new instance.
They are located in the same directory, $HOME/apps.
They have to be installed by unzipping a release of a theme from github.
Ex (for ezvis, release 6.2.0, which gives ezvis-6.2.0.tar.gz) :
$ cd ~/apps
$ tar xvzf ezvis-6.2.0.tar.gz
$ cd ezvis-6.2.0
$ npm install --productionMake sure you install only apps (apps must include a cli file in their root directory).
Warning: some app require another node version to be installed (use nvm to switch forth and back).
Instances
Instances are differentiated only by their data, and their settings.
All instances data are stored in the same instances directory, which path has to be given to ezmaster:
$ ezmaster /path/to/instancesBy default, instances are put into $HOME/instances.
Administrator
All user ids ending with administrator_end may create, modify, or delete an instance.
"administrator_end": "domain.co"NOTE: at the moment, no authentication is used. This
administrator_endis almost meaningless.
Port
The port used by the admin server:
"port": 35267To set the port that ezmaster will use, set the environment variable PORT (in .bashrc or .profile). Default value: 35267.
export PORT=3000domainProxy
ezmaster can behave like a proxy. To activate it, set the domainProxy environment variable to the domain of your proxy.
export domainProxy=domain.coIn this example, when a real_example_0 instance exists, you can use
http://real_example_0.domain.co to access to your instance, and not only with
http://machine.intra.domain.co:port/
Items per page
To change the default value of the items number per page, set the environment variable ITEMS_PER_PAGE (in .bashrc or .profile). Default value: 30.
export ITEMS_PER_PAGE=30Files tree
.
├── app.js
├── config.js
├── lib
├── package.json
├── public
│ ├── img
│ ├── javascripts
│ ├── SlickGrid
│ └── stylesheets
├── routes
├── test
├── tmp
├── README.md
└── viewsRunning
$ ezmaster [/path/to/instances/]and you can manually start all the instances with:
$ pm2 startOrRestart /path/to/instances.jsonContributions
To test, first make sure you have development dependencies installed:
$ npm install -dNext, run the admin:
$ ./bin/adminThen, you can launch the tests:
$ npm test