Eclipse Arrowhead Control app, or ahctl, is a small helper tool to interact with an Eclipse Arrowhead local cloud. It can be used to check to availability of several core systems, as well as list systems and services in the ServiceRegistry.
To compile for 64-bit Intel based platforms, issue the following command:
ahctl$ make all
To compile for 64-bit ARM based platforms (such as Raspberry Pi), issue the following command:
ahctl$ make all-arm64
Please that some commands require a sysop certificate when using CERTIFICATE mode!
To test if the ServiceRegistry is available, issue the following command (change the IP address and HTTP/HTTPS depending on the local cloud's configuration):
ahctl$ ./ahctl --sr=http://192.168.1.10:8443/serviceregistry
Calling http://192.168.1.10:8443/serviceregistry/echo
Got it!
To get all registred systems from the ServiceRegistry, issue the following command:
ahctl$ ./ahctl --sr=http://192.168.1.10:8443/serviceregistry --cmd=list-all-systems
{
"Data": [
{
"Id": 1,
"SystemName": "serviceregistry",
"Address": "192.168.1.10",
"Port": 8443,
"AuthenticationInfo": "",
"CreatedAt": "2022-09-24T15:43:27Z",
"UpdatedAt": "2023-01-14T10:30:08Z"
},
{
"Id": 2,
"SystemName": "datamanager",
"Address": "192.168.1.10",
"Port": 8461,
"AuthenticationInfo": "",
"CreatedAt": "2022-09-24T15:43:36Z",
"UpdatedAt": "2023-01-15T00:44:17Z"
},
{
"Id": 9,
"SystemName": "authorization",
"Address": "192.168.1.10",
"Port": 8445,
"AuthenticationInfo": "",
"CreatedAt": "2022-09-26T09:51:12Z",
"UpdatedAt": "2023-01-15T12:16:39Z"
},
{
"Id": 11,
"SystemName": "serviceregistry",
"Address": "192.168.1.10",
"Port": 8443,
"AuthenticationInfo": "",
"CreatedAt": "2023-01-14T10:30:41Z",
"UpdatedAt": "2023-01-15T13:16:33Z"
},
{
"Id": 15,
"SystemName": "orchestrator",
"Address": "192.168.1.10",
"Port": 8441,
"AuthenticationInfo": "",
"CreatedAt": "2023-01-14T18:02:17Z",
"UpdatedAt": "2023-01-14T18:02:17Z"
}
],
"Count": 5
}
Below is a list of the currently supported commands. More will be added in the future.
This command tries to get the "Got it!" response from the ServiceRegistry's /echo endpoint.
This command lists all systems stored in the ServiceRegistry.
This command gets the list of all ServiceDefinitions stored in the ServiceRegistry.
This command tries to get the "Got it!" response from the Orchestrator's /echo endpoint. The address of the Orchestrator is automatically queried from the ServiceRegistry.
This command fetches all orchestration rules from the Orchetsration system. The address of the Orchestrator is automatically queried from the ServiceRegistry.
This command creates an orchestration rule.
This command tries to get the "Got it!" response from the Authorization system's /echo endpoint. The address of the Authorization system is automatically queried from the ServiceRegistry.
This command tries to get the "Got it!" response from the DataManagers's /echo endpoint. The address of the DataManager is automatically queried from the ServiceRegistry.