task

package
v0.0.0-...-a027a2a Latest Latest
Warning

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

Go to latest
Published: Jan 26, 2022 License: Apache-2.0 Imports: 47 Imported by: 0

Documentation

Index

Constants

View Source
const (
	CheckToolsPathDir = "/tmp/tiup"
)

place the check utilities are stored

Variables

View Source
var (
	CheckTypeSystemInfo   = "insight"
	CheckTypeSystemLimits = "limits"
	CheckTypeSystemConfig = "system"
	CheckTypePort         = "port"
	CheckTypeService      = "service"
	CheckTypePackage      = "package"
	CheckTypePartitions   = "partitions"
	CheckTypeFIO          = "fio"
	CheckTypePermission   = "permission"
)

the check types

View Source
var (
	// ErrUnsupportedRollback means the task do not support rollback.
	ErrUnsupportedRollback = stderrors.New("unsupported rollback")
	// ErrNoExecutor means not being able to get the executor.
	ErrNoExecutor = stderrors.New("no executor")
	// ErrNoOutput means not being able to get the output of host.
	ErrNoOutput = stderrors.New("no outputs available")
)
View Source
var (

	// ErrEnvInitFailed is ErrEnvInitFailed
	ErrEnvInitFailed = errNSEnvInit.NewType("failed")
)

Functions

This section is empty.

Types

type AvailabilityZones

type AvailabilityZones struct {
	Zones []RegionZone `json:"AvailabilityZones"`
}

type BackupComponent

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

BackupComponent is used to copy all files related the specific version a component to the target directory of path

func (*BackupComponent) Execute

func (c *BackupComponent) Execute(ctx context.Context) error

Execute implements the Task interface

func (*BackupComponent) Rollback

func (c *BackupComponent) Rollback(ctx context.Context) error

Rollback implements the Task interface

func (*BackupComponent) String

func (c *BackupComponent) String() string

String implements the fmt.Stringer interface

type Builder

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

Builder is used to build TiUP task

func NewBuilder

func NewBuilder() *Builder

NewBuilder returns a *Builder instance

func (*Builder) BackupComponent

func (b *Builder) BackupComponent(component, fromVer string, host, deployDir string) *Builder

BackupComponent appends a BackupComponent task to the current task collection

func (*Builder) Build

func (b *Builder) Build() Task

Build returns a task that contains all tasks appended by previous operation

func (*Builder) BuildAsStep

func (b *Builder) BuildAsStep(prefix string) *StepDisplay

BuildAsStep returns a task that is wrapped by a StepDisplay. The task will print single line progress.

func (*Builder) CheckSys

func (b *Builder) CheckSys(host, dir, checkType string, topo *spec.Specification, opt *operator.CheckOptions) *Builder

CheckSys checks system information of deploy server

func (*Builder) ClusterOperate

func (b *Builder) ClusterOperate(
	spec *spec.Specification,
	op operator.Operation,
	options operator.Options,
	tlsCfg *tls.Config,
) *Builder

ClusterOperate appends a cluster operation task. All the UserSSH needed must be init first.

func (*Builder) ClusterSSH

func (b *Builder) ClusterSSH(
	topo spec.Topology,
	deployUser string, sshTimeout, exeTimeout uint64,
	proxyHost string, proxyPort int, proxyUser, proxyPassword, proxyKeyFile, proxyPassphrase string, proxySSHTimeout uint64,
	sshType, defaultSSHType executor.SSHType,
) *Builder

ClusterSSH init all UserSSH need for the cluster.

func (*Builder) CopyComponent

func (b *Builder) CopyComponent(component, os, arch string,
	version string,
	srcPath, dstHost, dstDir string,
) *Builder

CopyComponent appends a CopyComponent task to the current task collection

func (*Builder) CopyFile

func (b *Builder) CopyFile(src, dst, server string, download bool, limit int) *Builder

CopyFile appends a CopyFile task to the current task collection

func (*Builder) CreateInternetGateway

func (b *Builder) CreateInternetGateway(user, host string) *Builder

func (*Builder) CreateNetwork

func (b *Builder) CreateNetwork(user, host string) *Builder

func (*Builder) CreateRouteTable

func (b *Builder) CreateRouteTable(user, host string) *Builder

func (*Builder) CreateSecurityGroup

func (b *Builder) CreateSecurityGroup(user, host string) *Builder

func (*Builder) CreateVpc

func (b *Builder) CreateVpc(user, host string) *Builder

func (*Builder) CreateWorkstation

func (b *Builder) CreateWorkstation(user, host string) *Builder

func (*Builder) Deploy

func (b *Builder) Deploy(user, host string) *Builder

GcloudCreateInstance appends a GcloudCreateInstance task to the current task collection

func (*Builder) DeploySpark

func (b *Builder) DeploySpark(inst spec.Instance, sparkVersion, srcPath, deployDir string) *Builder

DeploySpark deployes spark as dependency of TiSpark

func (*Builder) Download

func (b *Builder) Download(component, os, arch string, version string) *Builder

Download appends a Downloader task to the current task collection

func (*Builder) EnvInit

func (b *Builder) EnvInit(host, deployUser string, userGroup string, skipCreateUser bool) *Builder

EnvInit appends a EnvInit task to the current task collection

func (*Builder) Func

func (b *Builder) Func(name string, fn func(ctx context.Context) error) *Builder

Func append a func task.

func (*Builder) InitConfig

func (b *Builder) InitConfig(clusterName, clusterVersion string, specManager *spec.SpecManager, inst spec.Instance, deployUser string, ignoreCheck bool, paths meta.DirPaths) *Builder

InitConfig appends a CopyComponent task to the current task collection

func (*Builder) InstallPackage

func (b *Builder) InstallPackage(srcPath, dstHost, dstDir string) *Builder

InstallPackage appends a InstallPackage task to the current task collection

func (*Builder) Limit

func (b *Builder) Limit(host, domain, limit, item, value string) *Builder

Limit set a system limit

func (*Builder) Mkdir

func (b *Builder) Mkdir(user, host string, dirs ...string) *Builder

Mkdir appends a Mkdir task to the current task collection

func (*Builder) MonitoredConfig

func (b *Builder) MonitoredConfig(name, comp, host string, globResCtl meta.ResourceControl, options *spec.MonitoredOptions, deployUser string, tlsEnabled bool, paths meta.DirPaths) *Builder

MonitoredConfig appends a CopyComponent task to the current task collection

func (*Builder) Parallel

func (b *Builder) Parallel(ignoreError bool, tasks ...Task) *Builder

Parallel appends a parallel task to the current task collection

func (*Builder) ParallelStep

func (b *Builder) ParallelStep(prefix string, ignoreError bool, tasks ...*StepDisplay) *Builder

ParallelStep appends a new ParallelStepDisplay task, which will print multi line progress in parallel for inner tasks. Inner tasks must be a StepDisplay task.

func (*Builder) Rmdir

func (b *Builder) Rmdir(host string, dirs ...string) *Builder

Rmdir appends a Rmdir task to the current task collection

func (*Builder) RootSSH

func (b *Builder) RootSSH(
	host string, port int, user, password, keyFile, passphrase string, sshTimeout, exeTimeout uint64,
	proxyHost string, proxyPort int, proxyUser, proxyPassword, proxyKeyFile, proxyPassphrase string, proxySSHTimeout uint64,
	sshType, defaultSSHType executor.SSHType,
) *Builder

RootSSH appends a RootSSH task to the current task collection

func (*Builder) SSHKeyGen

func (b *Builder) SSHKeyGen(keypath string) *Builder

SSHKeyGen appends a SSHKeyGen task to the current task collection

func (*Builder) SSHKeySet

func (b *Builder) SSHKeySet(privKeyPath, pubKeyPath string) *Builder

SSHKeySet appends a SSHKeySet task to the current task collection

func (*Builder) ScaleConfig

func (b *Builder) ScaleConfig(clusterName, clusterVersion string, specManager *spec.SpecManager, topo spec.Topology, inst spec.Instance, deployUser string, paths meta.DirPaths) *Builder

ScaleConfig generate temporary config on scaling

func (*Builder) Serial

func (b *Builder) Serial(tasks ...Task) *Builder

Serial appends the tasks to the tail of queue

func (*Builder) Shell

func (b *Builder) Shell(host, command, cmdID string, sudo bool) *Builder

Shell command on cluster host

func (*Builder) Step

func (b *Builder) Step(prefix string, inner Task) *Builder

Step appends a new StepDisplay task, which will print single line progress for inner tasks.

func (*Builder) Sysctl

func (b *Builder) Sysctl(host, key, val string) *Builder

Sysctl set a kernel parameter

func (*Builder) SystemCtl

func (b *Builder) SystemCtl(host, unit, action string, daemonReload bool) *Builder

SystemCtl run systemctl on host

func (*Builder) TLSCert

func (b *Builder) TLSCert(host, comp, role string, port int, ca *crypto.CertificateAuthority, paths meta.DirPaths) *Builder

TLSCert generates certificate for instance and transfers it to the server

func (*Builder) UpdateMeta

func (b *Builder) UpdateMeta(cluster string, metadata *spec.ClusterMeta, deletedNodeIds []string) *Builder

UpdateMeta maintain the meta information

func (*Builder) UpdateTopology

func (b *Builder) UpdateTopology(cluster, profile string, metadata *spec.ClusterMeta, deletedNodeIds []string) *Builder

UpdateTopology maintain the topology information

func (*Builder) UserSSH

func (b *Builder) UserSSH(
	host string, port int, deployUser string, sshTimeout, exeTimeout uint64,
	proxyHost string, proxyPort int, proxyUser, proxyPassword, proxyKeyFile, proxyPassphrase string, proxySSHTimeout uint64,
	sshType, defaultSSHType executor.SSHType,
) *Builder

UserSSH append a UserSSH task to the current task collection

type CheckSys

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

CheckSys performs checks of system information

func (*CheckSys) Execute

func (c *CheckSys) Execute(ctx context.Context) error

Execute implements the Task interface

func (*CheckSys) Rollback

func (c *CheckSys) Rollback(ctx context.Context) error

Rollback implements the Task interface

func (*CheckSys) String

func (c *CheckSys) String() string

String implements the fmt.Stringer interface

type ClusterInfo

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

type ClusterOperate

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

ClusterOperate represents the cluster operation task.

func (*ClusterOperate) Execute

func (c *ClusterOperate) Execute(ctx context.Context) error

Execute implements the Task interface

func (*ClusterOperate) Rollback

func (c *ClusterOperate) Rollback(ctx context.Context) error

Rollback implements the Task interface

func (*ClusterOperate) String

func (c *ClusterOperate) String() string

String implements the fmt.Stringer interface

type CopyComponent

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

CopyComponent is used to copy all files related the specific version a component to the target directory of path

func (*CopyComponent) Execute

func (c *CopyComponent) Execute(ctx context.Context) error

Execute implements the Task interface

func (*CopyComponent) Rollback

func (c *CopyComponent) Rollback(ctx context.Context) error

Rollback implements the Task interface

func (*CopyComponent) String

func (c *CopyComponent) String() string

String implements the fmt.Stringer interface

type CopyFile

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

CopyFile will copy a local file to the target host

func (*CopyFile) Execute

func (c *CopyFile) Execute(ctx context.Context) error

Execute implements the Task interface

func (*CopyFile) Rollback

func (c *CopyFile) Rollback(ctx context.Context) error

Rollback implements the Task interface

func (*CopyFile) String

func (c *CopyFile) String() string

String implements the fmt.Stringer interface

type CreateDBInstance

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

func (*CreateDBInstance) Execute

func (c *CreateDBInstance) Execute(ctx context.Context) error

Execute implements the Task interface

func (*CreateDBInstance) Rollback

func (c *CreateDBInstance) Rollback(ctx context.Context) error

Rollback implements the Task interface

func (*CreateDBInstance) String

func (c *CreateDBInstance) String() string

String implements the fmt.Stringer interface

type CreateInternetGateway

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

Mkdir is used to create directory on the target host

func (*CreateInternetGateway) Execute

func (c *CreateInternetGateway) Execute(ctx context.Context) error

Execute implements the Task interface

func (*CreateInternetGateway) Rollback

func (c *CreateInternetGateway) Rollback(ctx context.Context) error

Rollback implements the Task interface

func (*CreateInternetGateway) String

func (c *CreateInternetGateway) String() string

String implements the fmt.Stringer interface

type CreateNetwork

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

Mkdir is used to create directory on the target host

func (*CreateNetwork) Execute

func (c *CreateNetwork) Execute(ctx context.Context) error

Execute implements the Task interface

func (*CreateNetwork) Rollback

func (c *CreateNetwork) Rollback(ctx context.Context) error

Rollback implements the Task interface

func (*CreateNetwork) String

func (c *CreateNetwork) String() string

String implements the fmt.Stringer interface

type CreateRouteTable

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

Mkdir is used to create directory on the target host

func (*CreateRouteTable) Execute

func (c *CreateRouteTable) Execute(ctx context.Context) error

Execute implements the Task interface

func (*CreateRouteTable) Rollback

func (c *CreateRouteTable) Rollback(ctx context.Context) error

Rollback implements the Task interface

func (*CreateRouteTable) String

func (c *CreateRouteTable) String() string

String implements the fmt.Stringer interface

type CreateSecurityGroup

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

func (*CreateSecurityGroup) Execute

func (c *CreateSecurityGroup) Execute(ctx context.Context) error

Execute implements the Task interface

func (*CreateSecurityGroup) Rollback

func (c *CreateSecurityGroup) Rollback(ctx context.Context) error

Rollback implements the Task interface

func (*CreateSecurityGroup) String

func (c *CreateSecurityGroup) String() string

String implements the fmt.Stringer interface

type CreateVpc

type CreateVpc struct {
	VpcId string
	// contains filtered or unexported fields
}

Mkdir is used to create directory on the target host

func (*CreateVpc) Execute

func (c *CreateVpc) Execute(ctx context.Context) error

Execute implements the Task interface

func (*CreateVpc) Rollback

func (c *CreateVpc) Rollback(ctx context.Context) error

Rollback implements the Task interface

func (*CreateVpc) String

func (c *CreateVpc) String() string

String implements the fmt.Stringer interface

type CreateWorkstation

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

func (*CreateWorkstation) Execute

func (c *CreateWorkstation) Execute(ctx context.Context) error

Execute implements the Task interface

func (*CreateWorkstation) Rollback

func (c *CreateWorkstation) Rollback(ctx context.Context) error

Rollback implements the Task interface

func (*CreateWorkstation) String

func (c *CreateWorkstation) String() string

String implements the fmt.Stringer interface

type DBInstance

type DBInstance struct {
	DBInstanceIdentifier string `json:"DBInstanceIdentifier"`
	DBInstanceStatus     string `json:"DBInstanceStatus"`
}

type DBInstances

type DBInstances struct {
	DBInstances []DBInstance `json:"DBInstances"`
}

type Deploy

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

Mkdir is used to create directory on the target host

func (*Deploy) Execute

func (r *Deploy) Execute(ctx context.Context) error

Execute implements the Task interface

func (*Deploy) Rollback

func (r *Deploy) Rollback(ctx context.Context) error

Rollback implements the Task interface

func (*Deploy) String

func (r *Deploy) String() string

String implements the fmt.Stringer interface

type Downloader

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

Downloader is used to download the specific version of a component from the repository, there is nothing to do if the specified version exists.

func NewDownloader

func NewDownloader(component string, os string, arch string, version string) *Downloader

NewDownloader create a Downloader instance.

func (*Downloader) Execute

func (d *Downloader) Execute(_ context.Context) error

Execute implements the Task interface

func (*Downloader) Rollback

func (d *Downloader) Rollback(ctx context.Context) error

Rollback implements the Task interface

func (*Downloader) String

func (d *Downloader) String() string

String implements the fmt.Stringer interface

type EC2

type EC2 struct {
	InstanceId       string  `json:"InstanceId"`
	State            ECState `json:"State"`
	SubnetId         string  `json:"SubnetId"`
	VpcId            string  `json:"VpcId"`
	InstanceType     string  `json:"InstanceType"`
	ImageId          string  `json:"ImageId"`
	PrivateIpAddress string  `json:"PrivateIpAddress"`
	PrivateDnsName   string  `json:"PrivateDnsName"`
}

type EC2s

type EC2s struct {
	Instances []EC2 `json:"Instances"`
}

type ECState

type ECState struct {
	Code int    `json:"Code"`
	Name string `json:"Name"`
}

type EnvInit

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

EnvInit is used to initialize the remote environment, e.g: 1. Generate SSH key 2. ssh-copy-id

func (*EnvInit) Execute

func (e *EnvInit) Execute(ctx context.Context) error

Execute implements the Task interface

func (*EnvInit) Rollback

func (e *EnvInit) Rollback(ctx context.Context) error

Rollback implements the Task interface

func (*EnvInit) String

func (e *EnvInit) String() string

String implements the fmt.Stringer interface

type Func

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

Func wrap a closure.

func NewFunc

func NewFunc(name string, fn func(ctx context.Context) error) *Func

NewFunc create a Func task

func (*Func) Execute

func (m *Func) Execute(ctx context.Context) error

Execute implements the Task interface

func (*Func) Rollback

func (m *Func) Rollback(_ context.Context) error

Rollback implements the Task interface

func (*Func) String

func (m *Func) String() string

String implements the fmt.Stringer interface

type InitConfig

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

InitConfig is used to copy all configurations to the target directory of path

func (*InitConfig) Execute

func (c *InitConfig) Execute(ctx context.Context) error

Execute implements the Task interface

func (*InitConfig) Rollback

func (c *InitConfig) Rollback(ctx context.Context) error

Rollback implements the Task interface

func (*InitConfig) String

func (c *InitConfig) String() string

String implements the fmt.Stringer interface

type InstallPackage

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

InstallPackage is used to copy all files related the specific version a component to the target directory of path

func (*InstallPackage) Execute

func (c *InstallPackage) Execute(ctx context.Context) error

Execute implements the Task interface

func (*InstallPackage) Rollback

func (c *InstallPackage) Rollback(ctx context.Context) error

Rollback implements the Task interface

func (*InstallPackage) String

func (c *InstallPackage) String() string

String implements the fmt.Stringer interface

type InternetGateway

type InternetGateway struct {
	InternetGatewayId string `json:"InternetGatewayId"`
}

type InternetGateways

type InternetGateways struct {
	InternetGateways []InternetGateway `json:"InternetGateways"`
}

type Limit

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

Limit set a system limit on host

func (*Limit) Execute

func (l *Limit) Execute(ctx context.Context) error

Execute implements the Task interface

func (*Limit) Rollback

func (l *Limit) Rollback(ctx context.Context) error

Rollback implements the Task interface

func (*Limit) String

func (l *Limit) String() string

String implements the fmt.Stringer interface

type Mkdir

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

Mkdir is used to create directory on the target host

func (*Mkdir) Execute

func (m *Mkdir) Execute(ctx context.Context) error

Execute implements the Task interface

func (*Mkdir) Rollback

func (m *Mkdir) Rollback(ctx context.Context) error

Rollback implements the Task interface

func (*Mkdir) String

func (m *Mkdir) String() string

String implements the fmt.Stringer interface

type MonitoredConfig

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

MonitoredConfig is used to generate the monitor node configuration

func (*MonitoredConfig) Execute

func (m *MonitoredConfig) Execute(ctx context.Context) error

Execute implements the Task interface

func (*MonitoredConfig) Rollback

func (m *MonitoredConfig) Rollback(ctx context.Context) error

Rollback implements the Task interface

func (*MonitoredConfig) String

func (m *MonitoredConfig) String() string

String implements the fmt.Stringer interface

type NewDBInstance

type NewDBInstance struct {
	DBInstance DBInstance `json:"DBInstance"`
}

type NewEC2

type NewEC2 struct {
	Instances EC2 `json:"Instances"`
}

type NewInternetGateway

type NewInternetGateway struct {
	InternetGateway InternetGateway `json:"InternetGateway"`
}

type Parallel

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

Parallel will execute a bundle of task in parallelism way

func (*Parallel) Execute

func (pt *Parallel) Execute(ctx context.Context) error

Execute implements the Task interface

func (*Parallel) Rollback

func (pt *Parallel) Rollback(ctx context.Context) error

Rollback implements the Task interface

func (*Parallel) String

func (pt *Parallel) String() string

String implements the fmt.Stringer interface

type ParallelStepDisplay

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

ParallelStepDisplay is a task that will display multiple progress bars in parallel for inner tasks. Inner tasks will be executed in parallel.

func (*ParallelStepDisplay) Execute

func (ps *ParallelStepDisplay) Execute(ctx context.Context) error

Execute implements the Task interface

func (*ParallelStepDisplay) Rollback

func (ps *ParallelStepDisplay) Rollback(ctx context.Context) error

Rollback implements the Task interface

func (*ParallelStepDisplay) String

func (ps *ParallelStepDisplay) String() string

String implements the fmt.Stringer interface

type RegionZone

type RegionZone struct {
	RegionName string `json:"RegionName"`
	ZoneName   string `json:"ZoneName"`
}

type Reservations

type Reservations struct {
	Reservations []EC2s `json:"Reservations"`
}

type ResultRouteTable

type ResultRouteTable struct {
	TheRouteTable RouteTable `json:"RouteTable"`
}

type Rmdir

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

Rmdir is used to delete directory on the target host

func (*Rmdir) Execute

func (r *Rmdir) Execute(ctx context.Context) error

Execute implements the Task interface

func (*Rmdir) Rollback

func (r *Rmdir) Rollback(ctx context.Context) error

Rollback implements the Task interface

func (*Rmdir) String

func (r *Rmdir) String() string

String implements the fmt.Stringer interface

type RootSSH

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

RootSSH is used to establish a SSH connection to the target host with specific key

func (*RootSSH) Execute

func (s *RootSSH) Execute(ctx context.Context) error

Execute implements the Task interface

func (*RootSSH) Rollback

func (s *RootSSH) Rollback(ctx context.Context) error

Rollback implements the Task interface

func (RootSSH) String

func (s RootSSH) String() string

String implements the fmt.Stringer interface

type RouteTable

type RouteTable struct {
	RouteTableId string `json:"RouteTableId"`
}

type RouteTables

type RouteTables struct {
	RouteTables []RouteTable `json:"RouteTables"`
}

type SSHKeyGen

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

SSHKeyGen is used to generate SSH key

func (*SSHKeyGen) Execute

func (s *SSHKeyGen) Execute(ctx context.Context) error

Execute implements the Task interface

func (*SSHKeyGen) Rollback

func (s *SSHKeyGen) Rollback(ctx context.Context) error

Rollback implements the Task interface

func (*SSHKeyGen) String

func (s *SSHKeyGen) String() string

String implements the fmt.Stringer interface

type SSHKeySet

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

SSHKeySet is used to set the Context private/public key path

func (*SSHKeySet) Execute

func (s *SSHKeySet) Execute(ctx context.Context) error

Execute implements the Task interface

func (*SSHKeySet) Rollback

func (s *SSHKeySet) Rollback(ctx context.Context) error

Rollback implements the Task interface

func (*SSHKeySet) String

func (s *SSHKeySet) String() string

String implements the fmt.Stringer interface

type ScaleConfig

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

ScaleConfig is used to copy all configurations to the target directory of path

func (*ScaleConfig) Execute

func (c *ScaleConfig) Execute(ctx context.Context) error

Execute implements the Task interface

func (*ScaleConfig) Rollback

func (c *ScaleConfig) Rollback(ctx context.Context) error

Rollback implements the Task interface

func (*ScaleConfig) String

func (c *ScaleConfig) String() string

String implements the fmt.Stringer interface

type SecurityGroup

type SecurityGroup struct {
	GroupId string `json:"GroupId"`
}

type SecurityGroups

type SecurityGroups struct {
	SecurityGroups []SecurityGroup `json:"SecurityGroups"`
}

type Serial

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

Serial will execute a bundle of task in serialized way

func (*Serial) Execute

func (s *Serial) Execute(ctx context.Context) error

Execute implements the Task interface

func (*Serial) Rollback

func (s *Serial) Rollback(ctx context.Context) error

Rollback implements the Task interface

func (*Serial) String

func (s *Serial) String() string

String implements the fmt.Stringer interface

type Shell

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

Shell is used to create directory on the target host

func (*Shell) Execute

func (m *Shell) Execute(ctx context.Context) error

Execute implements the Task interface

func (*Shell) Rollback

func (m *Shell) Rollback(ctx context.Context) error

Rollback implements the Task interface

func (*Shell) String

func (m *Shell) String() string

String implements the fmt.Stringer interface

type StepDisplay

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

StepDisplay is a task that will display a progress bar for inner task.

func (*StepDisplay) Execute

func (s *StepDisplay) Execute(ctx context.Context) error

Execute implements the Task interface

func (*StepDisplay) Rollback

func (s *StepDisplay) Rollback(ctx context.Context) error

Rollback implements the Task interface

func (*StepDisplay) SetHidden

func (s *StepDisplay) SetHidden(h bool) *StepDisplay

SetHidden set step hidden or not.

func (*StepDisplay) String

func (s *StepDisplay) String() string

String implements the fmt.Stringer interface

type Subnet

type Subnet struct {
	AvailabilityZone string `json:"AvailabilityZone"`
	CidrBlock        string `json:"CidrBlock"`
	State            string `json:"State"`
	SubnetId         string `json:"SubnetId"`
	VpcId            string `json:"VpcId"`
}

type SubnetResult

type SubnetResult struct {
	Subnet Subnet `json:"Subnet"`
}

type Subnets

type Subnets struct {
	Subnets []Subnet `json:"Subnets"`
}

type Sysctl

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

Sysctl set a kernel param on host

func (*Sysctl) Execute

func (s *Sysctl) Execute(ctx context.Context) error

Execute implements the Task interface

func (*Sysctl) Rollback

func (s *Sysctl) Rollback(ctx context.Context) error

Rollback implements the Task interface

func (*Sysctl) String

func (s *Sysctl) String() string

String implements the fmt.Stringer interface

type SystemCtl

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

SystemCtl run systemctl command on host

func (*SystemCtl) Execute

func (c *SystemCtl) Execute(ctx context.Context) error

Execute implements the Task interface

func (*SystemCtl) Rollback

func (c *SystemCtl) Rollback(ctx context.Context) error

Rollback implements the Task interface

func (*SystemCtl) String

func (c *SystemCtl) String() string

String implements the fmt.Stringer interface

type TLSCert

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

TLSCert generates a certificate for instance

func (*TLSCert) Execute

func (c *TLSCert) Execute(ctx context.Context) error

Execute implements the Task interface

func (*TLSCert) Rollback

func (c *TLSCert) Rollback(ctx context.Context) error

Rollback implements the Task interface

func (*TLSCert) String

func (c *TLSCert) String() string

String implements the fmt.Stringer interface

type Task

type Task interface {
	fmt.Stringer
	Execute(ctx context.Context) error
	Rollback(ctx context.Context) error
}

Task represents a operation while TiUP execution

type UpdateMeta

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

UpdateMeta is used to maintain the cluster meta information

func (*UpdateMeta) Execute

func (u *UpdateMeta) Execute(ctx context.Context) error

Execute implements the Task interface the metadata especially the topology is in wide use, the other callers point to this field by a pointer, so we should update the original topology directly, and don't make a copy

func (*UpdateMeta) Rollback

func (u *UpdateMeta) Rollback(ctx context.Context) error

Rollback implements the Task interface

func (*UpdateMeta) String

func (u *UpdateMeta) String() string

String implements the fmt.Stringer interface

type UpdateTopology

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

UpdateTopology is used to maintain the cluster meta information

func (*UpdateTopology) Execute

func (u *UpdateTopology) Execute(ctx context.Context) error

Execute implements the Task interface

func (*UpdateTopology) Rollback

func (u *UpdateTopology) Rollback(ctx context.Context) error

Rollback implements the Task interface

func (*UpdateTopology) String

func (u *UpdateTopology) String() string

String implements the fmt.Stringer interface

type UserSSH

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

UserSSH is used to establish a SSH connection to the target host with generated key

func (*UserSSH) Execute

func (s *UserSSH) Execute(ctx context.Context) error

Execute implements the Task interface

func (*UserSSH) Rollback

func (s *UserSSH) Rollback(ctx context.Context) error

Rollback implements the Task interface

func (UserSSH) String

func (s UserSSH) String() string

String implements the fmt.Stringer interface

type Vpc

type Vpc struct {
	CidrBlock string `json:"CidrBlock"`
	State     string `json:"State"`
	VpcId     string `json:"VpcId"`
	OwnerId   string `json:"OwnerId"`
}

type Vpcs

type Vpcs struct {
	Vpcs []Vpc `json:"Vpcs"`
}

Jump to

Keyboard shortcuts

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