run command requires you to provide a toml based configuration file. This file controls the resources that the scheduler uses, how machines are dynamically scaled, and what features are enabled.
The available configuration options are shown in an example configuration file below, which is available in your install as
args = "test"[requirements]# Number of cores each user process uses, affects scheduling and# machine allocationcores = "1/16"# Amount of memory required by each user process, same as abovememory = "8 MiB"[tools]# These features are not available in the freemium version of the# Hadean SDKtracing_enabled = falsedebugging_enabled = false[cluster]# The number of machines to allocate in preparation for scaling up.# 0 = always allocate just in time# 1 = keep a VM around between runs that makes rapid iteration easier# 2+ = keep n VMs around between runs and always keep n-1 VMs on hand# ready to use while your application is scalingstandby_machines = 1# The time (in seconds) after which all standby machines will be# deallocated after an application has stopped.machines_timeout = 3600
args setting controls what arguments are passed to the user binary. For environment variables, see: Hints, Tips, and Troubleshooting
requirements section states what your application needs for it to be launched. In the freemium version, this also controls what resources are needed by each application that is created via the
spawn API. However, the full API is capable of using
spawn with arbitrary resource requirements.
tools section of the configuration controls what features are enabled on the platform. These features are not available in the freemium version of the platform.
cluster section of the configuration controls how the cluster scales:
standby_machines controls how many machines are provisioned ahead of time for scaling events.
machine_timeout controls how long the system should stay idle running no application before it starts removing standby machines.
For faster dev & test iteration, it's recommended to keep your
standby_machines at 1 or above, which will ensure that you don't have to wait to scale up or down every time you use the
run command. If your application needs to scale rapidly, you should set
standby_machines to at least 2, so that the platform begins creating a new VM once all VMs are in use.
When creating new clusters to deploy your application to, the Hadean Platform needs to know which geographic region to provision them in. Use the
--location flag to pass a location from the list below.:
hadean cluster --name <cluster-name> create --location="uksouth"
You can also set a default for all new clusters by using the
hadean config --default-location <location>
The following locations are available:
You can turn analytics tracking on or off using the
hadean config command. Simply specify
false as follows:
# Turn analytics offhadean config --analytics false# Turn analytics onhadean config --analytics true
The analytics data we collect is minimal. You can see tracing for when we send analytics requests via the
--debug flag on any command. Analytics are on by default.