Deploying GPII Architecture Components

From wiki.gpii
Jump to: navigation, search

How To Deploy

Overview

Deploying a GPII configuration involves using Kettle's configuration loader to load the desired GPII configuration.

Technically, this involves using Node.js to run either Kettle's init.js file or a platform-specific equivalent, and providing the path to the GPII configuration JSON file, using the following command-line:

[NODE_ENV=<environment>] node <path to universal code>/node_modules/kettle/lib/init.js <path/to/a/folder/with/your/config>

Notes

  • Setting the NODE_ENV variable is optional; it's value should be set to the name of the desired configuration file. The default value is development.
  • <path to universal code> is the location of the universal repository

Examples

// use the default "development.json" config file found in the preferencesServer module
node node_modules/kettle/lib/init.js gpii/node_modules/preferencesServer/configs/
// use the "production.json" config file found in the matchMaker module
NODE_ENV=production node node_modules/kettle/lib/init.js gpii/node_modules/matchMaker/configs/
// use the "ps.sr.production.json" config file found among the global configurations
NODE_ENV=ps.sr.production node node_modules/kettle/lib/init.js gpii/configs/

What To Deploy

Global Configuration Files

The GPII Architecture includes several global configuration files, located in the gpii/configs folder, that can be loaded as-is to deploy various commonly-desired configurations. These files include various module-specific configuration files to create different setups.

Filename fm.ps.sr.dr.mm.os.lms.development.json
Components loaded Development versions of:
  • Flow Manager
  • Preferences Server
  • Solutions Registry
  • Device Reporter
  • MatchMaker
  • Ontology Server
  • Lifecycle Manager Server
Notes This is the default configuration, which will be loaded if the NODE_ENV variable is not set.
Filename fm.ps.sr.dr.mm.os.lms.production.json
Components loaded Production versions of:
  • Flow Manager
  • Device Reporter
  • MatchMaker
  • Lifecycle Manager Server
Development versions of:
  • Ontology Server
  • Solutions Registry
Components referenced Preferences Server: http://preferences.gpii.net/user/%token
Notes The Preferences Server is not launched by this configuration file; this configuration references the Preferences Server deployed on the GPII server.
Filename fm.ps.sr.dr.mm.os.lms.multipleMatchMakers.json
Components loaded Development versions of:
  • Flow Manager
  • Preferences Server
  • Solutions Registry
  • Device Reporter
  • Ontology Server
  • MatchMaker Proxy
  • Lifecycle Manager Server
Notes This configuration loads the MatchMaker Proxy component.
Filename ps.sr.development.json
Components loaded Development versions of:
  • Preferences Server
  • Solutions Registry
Notes
Filename ps.sr.production.json
Components loaded Production versions of:
  • Preferences Server
  • Solutions Registry
Notes
Filename cloudBased.json
Components loaded Development versions of:
  • Matchmaker
  • Ontology Server
  • Lifecycle Manager Server
  • Solutions Registry
Notes

Module Configuration Files

Each module has its own configuration files, located in the configs subfolder of the given module. These configuration files can be combined (by being included in a master configuration file) to create various global configurations.

Device Reporter

Filename base.json
Modules
  • deviceReporter
Notes This is the simplest configuration for the Device Reporter. All it does is load the deviceReporter module. It carries out no particular configuration of the module. This configuration file is included by the other Device Reporter configurations.
Filename development.json
Modules
  • deviceReporter
Options
Notes
Filename production.json
Modules
  • deviceReporter
Options
Notes

Flow Manager

Filename base.json
Modules
  • flowManager
Notes This is the simplest configuration for the Flow Manager. This configuration file is included by the other Device Reporter configurations.
Filename development.json
Modules
  • flowManager
Options
Notes
Filename production.json
Modules
  • flowManager
Options
Notes
Filename io.json
Modules
  • flowManager
Options
Notes
Filename cloudBased.json
Modules
  • flowManager
Options
Notes

Lifecycle Manager Server

Filename base.json
Modules
  • lifecycleActions
  • lifecycleManager
  • settingsHandlers
Notes This is the simplest configuration for the Lifecycle Manager Server. This configuration file is included by the other Lifecycle Manager Server configurations.
Filename development.json
Modules
  • lifecycleActions
  • lifecycleManager
  • settingsHandlers
Options
Notes
Filename production.json
Modules
  • lifecycleActions
  • lifecycleManager
  • settingsHandlers
Options
Notes

Matchmaker

Filename base.json
Modules
  • matchMaker
Notes This is the simplest configuration for the Matchmaker. All it does is load the matchMaker module. It carries out no particular configuration of the module. This configuration file is included by the other Matchmaker configurations.
Filename development.json
Modules
  • matchMaker
  • ontologyServer
Options
Notes
Filename production.json
Modules
  • matchMaker
Options
Notes


Filename proxy.json
Modules
  • matchMaker
  • ontologyServer
Options
Notes

Ontology Server

Filename base.json
Modules
  • ontologyServer
Notes This is the simplest configuration for the Ontology Server. All it does is load the ontologyServer module. It carries out no particular configuration of the module. This configuration file is included by the other Ontology Server configurations.
Filename development.json
Modules
  • ontologyServer
options
Notes
Filename production.json
Modules
  • ontologyServer
options
Notes

Preferences Server

Filename base.json
Modules
  • preferencesServer
Notes This is the simplest configuration for the Preferences Server. This configuration file is included by the other Preferences Server configurations.
Filename development.json
Modules
  • preferencesServer
options
Notes
Filename production.json
Modules
  • preferencesServer
options
Notes

Solutions Registry

Filename base.json
Modules
  • solutionsRegistry
Notes This is the simplest configuration for the Solutions Registry. All it does is load the solutionsRegistry module. It carries out no particular configuration of the module. This configuration file is included by the other Solutions Registry configurations.
Filename development.json
Modules
  • solutionsRegistry
options
Notes
Filename production.json
Modules
  • solutionsRegistry
options
Notes