-
Notifications
You must be signed in to change notification settings - Fork 10
System properties reference
All genesis core system (i. e. not related to any plugins or providers) properties names start with prefix genesis.system.
genesis.system.bind.host Address to bind. Default is 0.0.0.0, i.e., any network interface
genesis.system.bind.port Port to listen. Default is 8080.
genesis.system.use.http Enable HTTP connector. Default is true.
genesis.system.use.https Enable HTTPS connector. Default is false.
genesis.web.admin.username Username for admin user
genesis.web.admin.sha.password SHA-256 hash of admin password (aeebad4a796fcc2e15dc4c6061b45ed9b373f26adfc798ca7d2d8cc58182718e for the word 'genesis'. You may use sha256sum command on Linux to generate another one. Also you can consult Ruby, Python, Perl, PHP documentation. All these languages contains SHA-256 implementation).
For example, to generate SHA-256 hash with Python, use following repl transcript:
Python 2.7.1+ (r271:86832, Apr 11 2011, 18:13:53)
[GCC 4.5.2] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import hashlib
>>> hashlib.sha256('genesis').hexdigest()
'aeebad4a796fcc2e15dc4c6061b45ed9b373f26adfc798ca7d2d8cc58182718e'
>>>
On Linux shell command will be:
echo -n genesis | sha256sum
Don't forget -n switch to suppress newline in echo command output
genesis.system.https.keystore Path to Java keystore file for HTTPS
connector.
genesis.system.https.keystore.password Password for Java keystore file
Genesis requires a DB connection in order to work properly. DB schema will be created automatically if absent. The connection to DB is configured in backend properties file.
genesis.system.jdbc.driver: JDBC driver class name to use for access to the application database
genesis.system.jdbc.url: Application database JDBC URL
genesis.system.jdbc.username: user name for access to the application database
genesis.system.jdbc.password: password for access to the application database
genesis.system.jdbc.drop.db: Recreate DB schema even if the schema already exists. Possible values: true, false
Here is the example for embedded DB configuration:
genesis.system.jdbc.driver = org.h2.Driver
genesis.system.jdbc.url = jdbc:h2:file:~/genesis_db
genesis.system.jdbc.username = ""
genesis.system.jdbc.password = ""
Genesis must be build with profile mssql.
If you intend to use integrated security, unzip file jdbc-3.0.1301.101-native-x64.jar in Genesis directory and add system property java.library.path pointing to Genesis directory as follows:
-Djava.library.path=<Genesis_dir>
Change database configuration in Genesis backend properties (assuming MS SQL running on host db.example.com and on default port, and contains database Genesis):
genesis.system.jdbc.driver = com.microsoft.sqlserver.jdbc.SQLServerDriver
genesis.system.jdbc.url = jdbc:sqlserver://db.example.com;databaseName=Genesis
genesis.system.jdbc.username = user
genesis.system.jdbc.password = password
For integrated security configuration is slightly different:
genesis.system.jdbc.driver = com.microsoft.sqlserver.jdbc.SQLServerDriver
genesis.system.jdbc.url = jdbc:sqlserver://db.example.com;databaseName=Genesis;integratedSecurity=true
genesis.system.jdbc.username = ""
genesis.system.jdbc.password = ""
Note that genesis.system.jdbc.username and genesis.system.jdbc.password still should be present, though empty.
On the first run database Genesis or whatever name you choose must exists and has to be empty (no user tables). Genesis will make attempt to create all tables it needs at start, so it's important for user that run Genesis application to have all necessary permission on database.
To drop and recreate table use property
genesis.system.jdbc.drop.db = true
as usual.
Due to bug in Java version 6u29 Genesis must be run with Java version lesser or greater than 6u29 to be able to connect to MS SQLServer.
genesis.system.default.vm.identity: User name for acccess to cloud VM via SSH
genesis.system.default.vm.credential: URL pointing to SSH private key for the VM user account
genesis.system.shutdown.timeout.sec Time to wait for graceful workflows termination in seconds. 0 - do not shutdown until everything canceled.
genesis.system.beat.period.ms: Workflow execution actors heartbeats period. Default value: 1000
genesis.system.flow.timeout.ms: Workflow execution timeout. Default value: 3600000
genesis.system.flow.executor.sync.threads.max: Maximum number of simultaneously executing synchronous actions. Default value: 5
genesis.system.security.environment.restriction.enabled: If true project adminstrator can restrict access to specific created environment for particular users
genesis.system.databag.template.repository.wildcard : Extension for databag templates files. Default value: *.dbtemplate
genesis.system.databag.template.repository.path: Absolute or relative path to databag templates folder. Default value: templates
OpenGenesis uses internal logging to store messages from executing steps and actions. By default main database is used to store such logs. Also, logs can be stored in filesystem. To enable it, add following properties:
genesis.logging.type : Must be set to filesystem. Default value is db
genesis.logging.filesystem.path : Top directory for logs. By default it's directory logs
in current directory.