Skip to content

Settings & configuration

Michael Kotliar edited this page Mar 15, 2018 · 23 revisions

Settings

Deployment-specific configuration can be set in two ways:

  • using meteor --settings [file.json] for development mode
  • using METEOR_SETTINGS environmental variable for produciton mode

For both of the cases example configuration will include the following fields

{
  "name": "BioWardrobe-NG",
  "logLevel": "debug",
  "base_url": "https://mydomain.com/",
  "email": {
    "url": "smtp://loginname:password@smtp.gmail.com:465/",
    "from": "user@mydomain.com"
  },
  "extra_users":[
      "extra-1@user.com",
      "extra-2@user.com"
  ],
  "ldap": {
    "url": "ldap://192.168.1.1:389",
    "dc": "DC=DC1,DC=DOMAIN,DC=ORG",
    "dn": "cn=SRV,OU=SERVICE,DC=DC1,DC=DOMAIN,DC=ORG",
    "password": "password"
  },
  "public":{
    "staleSessionInactivityTimeout": 300000,
    "staleSessionHeartbeatInterval": 120000,
    "staleSessionPurgeInterval": 60000,
    "staleSessionActivityEvents": "mousemove click keydown"
  },
  "uploadHome": "/tmp",
  "oauth2server": {
    "clients":[
      {
        "clientId": "uniqueCliendId",
        "clientSecret": "secretKey",
        "redirectUri": "http://your-domain.com/path/for/oauth"
      }
    ],
    "grant_type": ["authorization_code", "refresh_token"],
    "accessTokenLifetime": 600,
    "refreshTokenLifetime": null,
    "authCodeLifetime": 600,
    "domain": "mydomain.com"
  },
  "remotes": {
      "filestorage": {
        "loginUrl": "",
        "viewListUrl": "",
        "downloadUrl": "",
        "caption": "",
        "type": "files",
        "collection": {
          "name": "file_storage",
          "nullConnection": false
        },
        "encryptKey": "",
        "auth":
          {
            "login": "yourLogin",
            "pass": "yourPassword"
          }
      }
    }
}

where

  • logLevel - used by Bunyan logging library, can take one of the following values ['FATAL', 'ERROR', 'WARN', 'INFO', 'DEBUG']
  • extra_users - array of users emails to be added after system startup. By default each user is created without password. He will not be able to login until he set his password by following the enrollment link sent to his email.
  • ldap - ldap configuration section used by ldapjs to authorise the users connected to BioWardroe-NG (look for details in ldap.ts)
    • url - LDAP server URL
    • dn and password - user's Distinguished Name and password to perform BIND operation
    • dc - the base object entry in the tree relative to which the SEARCH operation will be performed
  • public - configuration section available both on the client and on the server, currently includes settings only for stale-session to handle session timeouts
    • staleSessionInactivityTimeout - the amount of time (in ms) after which, if no activity is noticed, a session will be considered stale
    • staleSessionHeartbeatInterval - interval (in ms) at which activity heartbeats are sent up to the server
    • staleSessionPurgeInterval - interval (in ms) at which stale sessions are purged i.e. found and forcibly logged out
    • staleSessionActivityEvents - the jquery events which are considered indicator of activity
  • oauth2server - configuration section for oauth2-server
    • clients - array of objects which describes the clients
Clone this wiki locally