Files
ProjectOctopus/agent-go/executor/function/BaseFunction.go
2023-06-14 11:21:31 +08:00

137 lines
2.4 KiB
Go

package function
import "strings"
type BaseFunc interface {
Exec(baseFuncName string, funcArgs ...string) string
}
type AgentOsOperator struct {
execCommandPrefix string `json:"exec_command_prefix",comment:"apt-get or yum or zapper"`
canAccessInternet bool `json:"can_access_internet",comment:"是否可以访问公网"`
}
// Exec 执行基础功能函数
func (op *AgentOsOperator) Exec(baseFuncName string, funcArgs ...string) string {
result := ""
switch baseFuncName {
case "shutdownFirewall":
result = op.shutdownFirewall()
break
case "modifyHostname":
result = op.modifyHostname(funcArgs)
break
case "disableSwap":
result = op.disableSwap()
break
case "installDocker":
result = op.installDocker(funcArgs)
break
case "installDockerCompose":
result = op.installDockerCompose()
break
case "modifyDockerConfig":
result = op.modifyDockerConfig()
break
case "installHelm":
result = op.installHelm()
break
case "installHarbor":
result = op.installHarbor(funcArgs)
break
case "chronyToPublicNTP":
result = op.chronyToPublicNTP()
break
case "chronyToMaster":
result = op.chronyToMaster(funcArgs)
break
case "installZSH":
result = op.installZSH()
break
case "modifySshPort":
result = op.modifySshPort(funcArgs)
break
case "openBBR":
result = op.openBBR()
break
default:
result = op.ok(funcArgs)
}
return result
}
func (op *AgentOsOperator) shutdownFirewall() string {
return ""
}
func (op *AgentOsOperator) modifyHostname(args []string) string {
return ""
}
func (op *AgentOsOperator) disableSwap() string {
return ""
}
func (op *AgentOsOperator) installDocker(args []string) string {
return ""
}
func (op *AgentOsOperator) installDockerCompose() string {
return ""
}
func (op *AgentOsOperator) installHelm() string {
return ""
}
func (op *AgentOsOperator) modifyDockerConfig() string {
return ""
}
func (op *AgentOsOperator) installHarbor(args []string) string {
return ""
}
func (op *AgentOsOperator) chronyToPublicNTP() string {
return ""
}
func (op *AgentOsOperator) chronyToMaster(args []string) string {
return ""
}
func (op *AgentOsOperator) installZSH() string {
return ""
}
func (op *AgentOsOperator) modifySshPort(args []string) string {
return ""
}
func (op *AgentOsOperator) openBBR() string {
return ""
}
func (op *AgentOsOperator) ok(args []string) string {
return "base function is ok , args are => " + strings.Join(args, " ")
}