Component types are defined using a YAML manifest with the following structure:
# General sectionname:function_branindescription:A component type for the branin analytical function# Parameters sectionparameters: - name:x1domain:type:realdomain: [-5.0,10.0]defaultValue:-5.0decimals:3operators:FileConfigurator:confTemplate:"${value}" - name:x2domain:type:realdomain: [0.0,15.0]defaultValue:0.0 - name:x3domain:type:categoricalcategories: [cat1,cat2,cat3]operators:LinuxConfigurator:echo:file:/sys/class/block/nvme0n1/queue/scheduler# Metrics sectionmetrics: - name:function_value
and properties for the general section:
Field
Type
Value restrictions
Is required
Default value
Description
name
string
should match the following regexp:
^[a-zA-Z][a-zA-Z0-9_]*$
that is only letters, number and underscores, no initial number of underscore
Notice: this should not match the name of another component
TRUE
The name of the component.
description
string
TRUE
A description to characterize the component.
componentType
string
notice: this should match the name of an existing component-type
TRUE
The name of the component-type that defines the type of the component.
properties
object
FALSE
General custom properties of the component. These properties can be defined freely and usually have the purpose to expose information useful for configuring the component.
The parameter section describes the relationship between the component type and already defined parameters with the following properties:
Field
Type
Value restrictions
Is required
Default value
Description
name
string
It should match the name of an existing parameter.
Yes
-
The name of the parameter that should be related to the component-type
domain->type
string
{real, integer, categorical}
Yes
-
The type of domain to be set for the parameter in relationship with the component-type
domain->domain
array of numbers
The numbers should be either all integers or real numbers(do not omit the " . ") depending on domain->type.
The size of the array must be 2.
No
-
The bounds to be used to define the domain of the parameter. These bounds are inclusive
domain->categories
array of strings
No
-
The possible categories that the parameter could possess
defaultValue
string, integer, real
The value must be included in the domain, for real and integer types and must be a value included in the categories
Yes
-
The default value of the parameter
decimals
integer
[0-255]
No
5
The number of decimal digits rendered for this parameter
operators
object
TRUE
-
Specify what operators can be used to apply the parameter
The metric section describes the relationship between the component type and already defined metrics with the following properties:
Field
Type
Value restrictions
Is required
Default value
Description
name
string
It should match the name of an existing metric
TRUE
The name of the metric that should be related to the component type
Notice that component type definitions are shared across all the workspaces on the same Akamas installation, and require an account with administrative privileges to manage them.
Examples
Example of a component for the Cassandra component type: