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]])

make-localhost-node

[& {: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

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

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

node-list-service

[node-list & {:keys [environment], :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.