ControlNode.Namespace.Spec (Control Node v0.5.0) View Source

Link to this section Summary

Types

t()

Namespace.Spec defines a spec with the following attributes,

Link to this section Types

Specs

t() :: %ControlNode.Namespace.Spec{
  control_mode: term(),
  deployment_type: atom(),
  hosts: [ControlNode.Host.SSH.t()],
  registry_spec: ControlNode.Registry.Local.t(),
  release_cookie: atom(),
  release_management: term(),
  tag: atom()
}

Namespace.Spec defines a spec with the following attributes,

  • :tag : Tag for the namespace (eg: :testing)
  • :hosts : List of hosts where the release will be deployed.
  • :registry_spec : Defines the registry from where there release tar will be retireved for rolling out deployment in this namepsace
  • :release_cookie : Release cookie used by the release in this given namespace. This cookie will be used by control node to connect to the release nodes
  • :control_mode : Configures mode for the given namespace, default "MANAGE" . Other possible value is "OBSERVE" | "CONNECT" . In "OBSERVE" mode user will only be allowed to deploy and observe a release i.e. no failover mechanism are avaiable. In "CONNECT" mode the control will just connect to release nodes and no other operation (like deploy or failover) are executed.