replictl

Replicante replictl is a command line tool to interact with Replicante Core and the clusters it manages.

Compatibility between different replictl and Replicante Core versions is not guaranteed.

In general the same version should be used for both Replicante Core and replictl.

replictl offers a sub-command based structure like git and cargo.

Use replictl --help to explore available commands and sub-commands.

Contexts

Authentication and authorization support are not currently implemented.
They are on the roadmap (because of course they are) and will be implemented as soon as possible.

Because of that, some concepts such as Single-Sign On have been introduced even if they are not complete.

To know which Replicante Core instance to connect to and how to interact with it, replictl uses contexts. This allows users to create a context for each instance they manage and switch among them when needed.

Context are created, changed, selected and removed with the commands in replictl context.

Scope and scope overrides

One of the foundational ideas is that generic tasks not tailored to a specific cluster (such as common NodeActions) should be transferable from one scope (namespace, cluster, node) to another.

To make this easier replictl supports scope attributes:

  • namespace can set or override the namespace to operate on.
  • cluster can set or override set cluster to operate on.
  • node can set or override the node to operate on.

Contexts can store a default value for each scope attributes so they don’t need to be repeated (see replictl context change).

In replictl scope attributes can be set or overridden with the command line:

  • --namespace for the namespace.
  • --cluster for the cluster.
  • --node for the node.

On top of the command line arguments above scope attributes can be set using environment variables:

  • RCTL_NAMESPACE to set or override the --namespace.
  • RCTL_CLUSTER to set or override the --cluster.
  • RCTL_NODE to set or override the --node.

The command line tool also supports and additional RCTL_CONTEXT environment variable to specify an available context to use.

Subcommands