Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

There are 2 subtypes of Daemon catalogs, which require 2 separate Soa.json files.


subType : cronJob


Code Block
languageactionscript3
titlesoa.json for type=daemon
{
    "type": "daemon",
	"subType": "cronJob",
    "name": "damonss",
    "group": "damongroup",
	"description": "This is the decryption of your daemon",

	"tags": ["tag1", "tag2"],
	"attributes": {
		"att1": ["att1.1", "att1.2"],
		"att2": ["att2.1", "att2.2"]
	},
	"program": ["soajs"],
	"tab": {
    	"main": "kubernetes cronjob",
    	"sub": "Subtype Daemon"
  	},
	"documentation": {
		"readme": "/doc/markupfile",
		"release": "/doc/markupfile"
	},

    "port": 4100,
    "version": "1",
	"maintenance": {
        "port": {
            "type": "inherit"
        },
        "readiness": "/heartbeat"
    },
    "prerequisites": {
        "cpu": " ",
        "memory": " "
    }
}

...

VariableRequireddescriptionexampleDefault
UI meta data
typeYesThe following type is supported: static, service, daemon, multi, custom (anything else)if not set the default type will be custom.custom
subtype


daemons
tab


-
nameYesThe name of the daemon has to be unique and not been used by other daemons at the API catalog.

If the repoName is : xx.pay.merchant-daemon 
Then your daemon name should be: "merchant-daemon"


groupYesThe group of the daemon, make sure you set the right group to properly display the daemon under the right group at the daemon catalog.

The daemon Group should reflect the system the service belongs to "Payment"


descriptionNoThe daemon description to appear in the daemon catalog UI"This is a string"-
Search meta data
tagsNo

-
attributesNo

-
programNo

-
Documentation meta data
documentationNo

-
Type meta data
swaggerFilenameNoThe location of the service swagger file from the repository root. if not set soajs will look for swagger.yml or swagger.json at the root folder."/doc/swagger.yml"swagger.json
portYesThe port of the daemon. make sure it is unique and not being used by any other daemon at the API catalog. 4100
versionYesThe version of the daemon. make sure it has the following syntax: a string of /[0-9]+(.[0-9]+)?/"1" or "1.1""1"
maintenanceYesThe heartbeat route to probe the health status of the service. 


Code Block
languageactionscript3
titleexample
{
 "port": {
    "type": "inherit"
        },
 "readiness": "/heartbeat",

 "commands": [
    {"label": "reload", "path": "/reload", "icon": "provision"}
        ]
}



prerequisites




Maintenance Icon
For maintenance SOAJS is using font awesome, check out the available icons at https://fontawesome.com/icons?d=gallery 

For example, if you choose the wrench icon as follows :


Code Block
languagejs
titleexample
{
 "port": {
    "type": "inherit"
        },
 "readiness": "/heartbeat",

 "commands": [
    {"label": "My Command", "path": "/mypath", "icon": "wrench"}
        ]
}


Image Added

...

subType : daemon


Code Block
languageactionscript3
titlesoa.json for type=daemon
{
    "type": "daemon",
	"subType": "daemon",
    "name": "damonss",
    "group": "damongroup",
	"description": "This is the decryption of your daemon of type soajs",

	"tags": ["tag1", "tag2"],
	"attributes": {
		"att1": ["att1.1", "att1.2"],
		"att2": ["att2.1", "att2.2"]
	},
	"program": ["soajs"],
	"tab": {
    	"main": "kubernetes cronjob",
    	"sub": "Subtype Daemon"
  	},
	"documentation": {
		"readme": "/doc/markupfile",
		"release": "/doc/markupfile"
	},

    "port": 4100,
    "version": "1",
    "extKeyRequired": true,
    "oauth": true,
    "urac": true,
    "urac_Profile": true,
    "urac_ACL": false,
    "tenant_Profile": false,
    "provision_ACL": false,
    "requestTimeout": 30,
    "requestTimeoutRenewal": 5,
	"maintenance": {
        "port": {
            "type": "inherit"
        },
        "readiness": "/heartbeat"
    },
    "prerequisites": {
        "cpu": " ",
        "memory": " "
    }
}

...