SHRINE gets its configuration from a configuration file named shrine.conf in /opt/shrine/tomcat/lib. If you are installing a downstream (non-hub) node, copy the shrine-setup/qep-and-adapter-shrine.conf file from shrine-setup.zip to tomcat's lib directory. If you are creating a hub use hub-and-qep-shrine.conf instead.

cp shrine-setup/qep-and-adapter-shrine.conf /opt/shrine/tomcat/lib/shrine.conf


In this guide, we will refer to this file often and will go more in detail on configuring this file in the later chapters). Here is the example shrine.conf file from shrine-setup.zip. You will need to customize it for your own node on your network.  In the example below, the first four lines in the shrine section define values for parameters that are used throughout the configuration file. 

shrine.conf
shrine {

  shrineHubBaseUrl = "https://shrine-hub.faraway.com:6443" //The shrine hub's URL as observed from this tomcat server
  i2b2BaseUrl = "http://i2b2.example.com:9090" //The local i2b2's URL as observed from this tomcat server
  i2b2Domain = "exampleDomain"
  i2b2ShrineProjectName = "SHRINE"

  nodeKey = "testNode" //node key to get information from the hub about this node.

  //shrineDatabaseType = "mysql" // "mysql" by default. It can be "sqlserver" "mysql" or "oracle"

  webclient {
   siteAdminEmail = "shrine-admin@example.com"
  }
  
  hiveCredentials {
    username = "demo"
    crcProjectId = "Demo"
  }//hiveCredentials

  keystore {
    privateKeyAlias = "shrine-node1"
    caCertAliases = ["shrine-ca"]
  }//keystore

  steward {
    emailDataSteward {
      //provide the email address of the shrine node system admin, to handle bounces and invalid addresses
      from = "shrine-admin@example.com"
      //provide the email address of the shrine node system admin, to handle bounces and invalid addresses
      to = "shrine-steward@example.com"
      //provide the externally-reachable URL for the data steward
      externalStewardBaseUrl = "https://shrine.example.com:6443/shrine-api/shrine-steward"
    }
  }//steward
}//shrine

(Optional) To require users to be a member of a specific PM cell project, add the following to shrine.conf:

shrine.authenticate.pmProjectName = "<enter PM cell project name here>"


All passwords are stored in password.conf file in /opt/shrine/tomcat/lib instead of shrine.conf.

password.conf
shrine.keystore.password = "changeit"
shrine.hiveCredentials.password = "changeit"

nodeKey parameter

The nodeKey value will be used to identify your node from the Hub. This value must be a unique alphanumeric identifier in your network. If you have any questions, please contact the hub administrator for more information.

i2b2Domain parameter

Choose a custom value for your domain parameter that clearly identifies your institution. Do not leave it at its default values.