skycluster v1.1.0 Cluster.Strategy behaviour

This module defines the behaviour for implementing clustering strategies.

Summary

Functions

Given a list of node names, attempts to connect to all of them. Returns :ok if all nodes connected, or {:error, [{node, reason}, ..]} if we failed to connect to some nodes

Returns a worker specification for the selected cluster strategy

Starts the selected cluster strategy process

Types

bad_nodes :: [{node, reason :: term}]

Functions

connect_nodes(nodes)

Specs

connect_nodes([atom]) :: :ok | {:error, bad_nodes}

Given a list of node names, attempts to connect to all of them. Returns :ok if all nodes connected, or {:error, [{node, reason}, ..]} if we failed to connect to some nodes.

All failures are logged.

spec()

Specs

Returns a worker specification for the selected cluster strategy.

start_link()

Specs

start_link ::
  {:ok, pid} |
  :ignore |
  {:error, reason :: term}

Starts the selected cluster strategy process.

Callbacks

start_link()

Specs

start_link ::
  {:ok, pid} |
  :ignore |
  {:error, reason :: term}