Adapter Hub Services
Adapter Hub Services can be deployed on an Adapter Hub to run pre-configured services on the hub. These services are deployed and managed using the UIP system.
Service Templates
A service template defines configuration and deployment parameters for Adapter Hub services. To deploy a service you must configure a template on the Adapter Hub Services page by adding a service with the Add Adapter Hub Service button. A working Adapter Hub should pre-configured before configuring Adapter Hub Services.
The template is a JSON representation of the service to be ran combined with the configuration of the service.
Default templates are available under the Adapter Hub Service Templates dropdown. Selecting one of the options will replace the template box content.
Simple example of a Patlite service template:
{
"name": "Patlite service template",
"description": "This template installs all the services required for the integration with Patlite products.",
"version": "1.0",
"properties": {
"listenPort": "60091",
"secretKey": "donottell",
"deviceType": "patlite",
"deviceAddress": "10.99.1.50",
"devicePort": "10000"
},
"network": {
"subnet": "10.1.7.0/24"
},
"secrets": {
"configfile": {
"json": {
"listenAddress": "",
"listenPort": 60091,
"secretKey": "${secretKey}",
"devices": {
"dev1": {
"name": "Device 1",
"type": "${deviceType}",
"address": "${deviceAddress}",
"port": "${devicePort}"
}
}
}
}
},
"volumes": {
"dbdata": {}
},
"services": {
"devctl": {
"image": "docker.io/example/testservice:4.9.10",
"env": [
{
"name": "CONFIGFILE",
"value": "/etc/myservice/config.json"
}
],
"secrets": [
{
"source": "configfile",
"target": "/etc/myservice/config.json"
}
],
"volumes": [
{
"type": "volume",
"source": "dbdata",
"target": "/data/db",
"readonly": false
}
],
"ports": [{
"protocol": "tcp",
"hostPort": "${listenPort}",
"containerPort": 60091
}
]
}
}
}
In this example the configuration of the properties at the top of the template is all that is needed to be modified for a specific installation. This data is pasted in the template box on the Adapter Hub Services Page and once saved will be deployed to the Adapter Hub.
After saving this configuration the service can be Deployed to the adapter hub using Deploy Actions.
A service can also be Undeployed from a adapter hub if it is not longer needed using Deploy Actions.
The current status of each service is shown on the Adapter Hub Services Page.
Deploy Status
The deploy status gives status of the deployment. This does not represent the running of the service - just the deployment action.
- Unknown - the adapter hub has not sent a deploy status.
- Not Deployed - the service is not deployed to an adapter hub.
- Success - the service was successfully deployed to an adapter hub.
- Faulted - the service had an error while deploying the service on the adapter hub.
Service Status
This is the status of the service on the Adapter Hub
- Unknown - the adapter hub has not sent a service status.
- Stopped - The Docker services are not running.
- Starting - Docker services for the Adapter Hub Service are running but some are still starting up (such as waiting for health check checks to complete)
- Started - All Docker services for the Adapter Hub Service are in running mode.
- Faulted - At least one of the Docker services is not in running mode.
Deploy Actions
The Deploy Actions control can be used to Undeploy, Deploy or Force Deploy a service on an Adapter Hub.