vtctld

package
v3.0.1+incompatible Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 26, 2020 License: Apache-2.0 Imports: 37 Imported by: 0

Documentation

Overview

Package vtctld contains all the code to expose a vtctld server based on the provided topo.Server.

Package vtctld contains all the code to expose a vtctld server based on the provided topo.Server.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func InitVtctld

func InitVtctld(ts *topo.Server)

InitVtctld initializes all the vtctld functionnality.

func RegisterDebugHealthHandler

func RegisterDebugHealthHandler(ts *topo.Server)

RegisterDebugHealthHandler register a debug health http endpoint for a vtcld server

Types

type ActionRepository

type ActionRepository struct {
	// contains filtered or unexported fields
}

ActionRepository is a repository of actions that can be performed on a {Keyspace,Shard,Tablet}. Note that the registered action methods will be passed an *http.Request on which ParseForm() has already succeeded.

func NewActionRepository

func NewActionRepository(ts *topo.Server) *ActionRepository

NewActionRepository creates and returns a new ActionRepository, with no actions.

func (*ActionRepository) ApplyKeyspaceAction

func (ar *ActionRepository) ApplyKeyspaceAction(ctx context.Context, actionName, keyspace string, r *http.Request) *ActionResult

ApplyKeyspaceAction applies the provided action to the keyspace.

func (*ActionRepository) ApplyShardAction

func (ar *ActionRepository) ApplyShardAction(ctx context.Context, actionName, keyspace, shard string, r *http.Request) *ActionResult

ApplyShardAction applies the provided action to the shard.

func (*ActionRepository) ApplyTabletAction

func (ar *ActionRepository) ApplyTabletAction(ctx context.Context, actionName string, tabletAlias *topodatapb.TabletAlias, r *http.Request) *ActionResult

ApplyTabletAction applies the provided action to the tablet.

func (*ActionRepository) RegisterKeyspaceAction

func (ar *ActionRepository) RegisterKeyspaceAction(name string, method actionKeyspaceMethod)

RegisterKeyspaceAction registers a new action on a keyspace.

func (*ActionRepository) RegisterShardAction

func (ar *ActionRepository) RegisterShardAction(name string, method actionShardMethod)

RegisterShardAction registers a new action on a shard.

func (*ActionRepository) RegisterTabletAction

func (ar *ActionRepository) RegisterTabletAction(name, role string, method actionTabletMethod)

RegisterTabletAction registers a new action on a tablet.

type ActionResult

type ActionResult struct {
	Name       string
	Parameters string
	Output     string
	Error      bool
}

ActionResult contains the result of an action. If Error, the action failed.

type Result

type Result struct {
	Data     string
	Children []string
	Error    string
}

Result is what the backendExplorer returns. It represents one directory node. It is exported so the JSON encoder can print it.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL