pallet.compute.node-list documentation

A simple node list provider.

The node-list provider enables pallet to work with a server rack or existing virtual machines. It works by maintaining a list of nodes. Each node minimally provides an IP address, a host name, a group name and an operating system. Nodes are constructed using make-node.

An instance of the node-list provider can be built using node-list-service.

(node-list-service
  [["host1" "fullstack" "192.168.1.101" :ubuntu]
   ["host2" "fullstack" "192.168.1.102" :ubuntu]])

->Node

fn

[name group-name ip os-family os-version id ssh-port private-ip is-64bit running service hardware proxy image-user]

Positional factory function for class pallet.compute.node_list.Node.

->NodeList

fn

[node-list environment tag-provider]

Positional factory function for class pallet.compute.node_list.NodeList.

->NodeTagStatic

fn

[static-tags]

Positional factory function for class pallet.compute.node_list.NodeTagStatic.

make-localhost-node

fn

[& {:keys [name group-name ip os-family id], :or {name "localhost", group-name "local", ip "127.0.0.1", os-family (jvm/os-family)}, :as options}]

Make a node representing the local host. This calls make-node with values inferred for the local host. Takes options as for make-node.

:name "localhost"
:group-name "local"
:ip "127.0.0.1"
:os-family (pallet.compute.jvm/os-family)

make-node

fn

[name group-name ip os-family & {:keys [id ssh-port private-ip is-64bit running os-version service hardware proxy image-user], :or {ssh-port 22, is-64bit true, running true}}]

Returns a node, suitable for use in a node-list.

map->Node

fn

[m__5665__auto__]

Factory function for class pallet.compute.node_list.Node, taking a map of keywords to field values.

node-list-service

fn

[node-list & {:keys [environment tag-provider], :as options}]

Added: 0.6.8

Create a node-list compute service, based on a sequence of nodes. Each node is passed as either a node object constructed with make-node, or as a vector of arguments for make-node.

Optionally, an environment map can be passed using the :environment keyword. See pallet.environment.