$ mvn clean install
$ npm run start
Server is running on http://localhost:4000
Start the server with a BDM:
$ node target/src/server/starter.js bdmFile=YOUR_PATH/bdm_simple.xml
or
$ npm run start
Options | Description | Example | Default value |
---|---|---|---|
config | To run server with a config file (json) | config=config/development.json | |
bdmFile | File to load on server starting | bdmFile=yourPath/bom.xml | |
host | Start server on this host | host=0.0.0.0 | 127.0.0.1 |
port | Start server on this port | port=5000 | 4000 |
healthCheckHost | Host healCheck. If option not found, server work without healthCheck | healthCheckHost=http://localhost | http://localhost |
healthCheckUrl | Url healthCheck. If option not found, server work without healthCheck | healthCheckUrl=/api/workspace/status/ | |
healthCheckPort | Port healCheck. If option not found, server work without healthCheck | healthCheckPort=5050 | |
logLevel | Level for log (error, warn, info, debug) | logLevel=debug | info |
logFile | Output file for logs. One file per day | logFile=./logs/myLog/ | ./logs/ |
Each option can be given on server start command. Config parameter will be always override file configuration.
Example of dev config file:
{
"port": "5000",
"bdmFile": "resources/bomSimple.xml",
"logLevel": "warn",
"logfile": "./logs"
}
To simulate 'production' environment, don't forget to add healthCheck information. You can see an example in config/production.json file.
http://localhost:4000/bdm/graphql
http://localhost:4000/bdm/json
http://localhost:4000/bdm/graphical
$ curl -H "Content-Type: application/json" localhost:4000/bdm -d '{"bdmXml": "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?> <businessObjectModel modelVersion=\"1.0\" productVersion=\"7.10.0-SNAPSHOT\"> <businessObjects> <businessObject qualifiedName=\"com.company.model.BusinessObject1\"> <fields> <field type=\"STRING\" length=\"255\" name=\"attribute1\" nullable=\"true\" collection=\"false\"/> </fields> <uniqueConstraints/> <queries/> <indexes/> </businessObject> </businessObjects> </businessObjectModel>"}'
Reset the repository in its initial state (with no BDM)
curl -X DELETE localhost:4000/bdm
http://localhost:4000/bdm/status
Provides the server status, for json requests and GraphQL requests.
For instance:
{"jsonRequest":true,"graphqlRequest":true}
This repository follows the GitFlow branching strategy.
To release a new version, maintainers may use the Release and Publication GitHub actions.
- Release action will invoke the
gitflow-maven-plugin
to perform all required merges, version updates and tag creation. - Publication action will build and deploy a given tag to bonitasoft.jfrog.io/artifactory.
- A GitHub release should be created and associated to the tag.