NormalizedToolDescription¶
The specification of a Tool
data class NormalizedToolDescription(
val info: NameAndVersion,
val container: String?,
val defaultNumberOfNodes: Int,
val defaultTimeAllocation: SimpleDuration,
val requiredModules: List<String>,
val authors: List<String>,
val title: String,
val description: String,
val backend: ToolBackend,
val license: String,
val image: String?,
val supportedProviders: List<String>?,
)
Properties
info: NameAndVersion The unique name and version tuple
NameAndVersion
container: String? Deprecated, use image instead.
String?
defaultNumberOfNodes: Int The default number of nodes
Int
defaultTimeAllocation: SimpleDuration The default time allocation to use, if none is specified.
SimpleDuration
requiredModules: List<String> A list of required 'modules'
List<String>The provider decides how to interpret this value. It is intended to be used with a module system of traditional HPC systems.
title: String A title for this Tool used for presentation purposes
String
description: String A description for this Tool used for presentation purposes
String
backend: ToolBackend The backend to use for this Tool
ToolBackend
license: String A license used for this Tool. Used for presentation purposes.
String
image: String? The 'image' used for this Tool
String?This value depends on the backend used for the Tool:
DOCKER: The image is a container image. Typically follows the Docker format.VIRTUAL_MACHINE: The image is a reference to a base-image
It is always up to the Provider how to interpret this value. We recommend using the supportedProviders
property to ensure compatibility.
supportedProviders: List<String>? A list of supported Providers
List<String>?This property determines which Providers are supported by this Tool. The backend will not allow a user to launch an Application which uses this Tool on a provider not listed in this value.
If no providers are supplied, then this Tool will implicitly support all Providers.