[agent][deploy] - jxyd
This commit is contained in:
@@ -74,7 +74,7 @@ func (op *AgentOsOperator) Exec(baseFuncName string, funcArgs ...string) (bool,
|
|||||||
resultOk, errorLog = op.installDockerExec(funcArgs)
|
resultOk, errorLog = op.installDockerExec(funcArgs)
|
||||||
break
|
break
|
||||||
case "installDockerByOffline":
|
case "installDockerByOffline":
|
||||||
resultOk, errorLog = op.installDockerOfflineExec(funcArgs)
|
resultOk, errorLog = op.InstallDockerBastion()
|
||||||
break
|
break
|
||||||
case "removeDocker":
|
case "removeDocker":
|
||||||
resultOk, errorLog = op.removeDockerExec()
|
resultOk, errorLog = op.removeDockerExec()
|
||||||
@@ -728,7 +728,7 @@ func (op *AgentOsOperator) installDockerExec(args []string) (bool, []string) {
|
|||||||
if !op.CanAccessInternet {
|
if !op.CanAccessInternet {
|
||||||
// offline version
|
// offline version
|
||||||
log.InfoF("[installDockerExec] - can not access to internet, installing by offline !")
|
log.InfoF("[installDockerExec] - can not access to internet, installing by offline !")
|
||||||
return op.installDockerOfflineExec(args)
|
return op.InstallDockerBastion()
|
||||||
}
|
}
|
||||||
|
|
||||||
installDependencyCommand := append(op.InstallCommandPrefix, []string{
|
installDependencyCommand := append(op.InstallCommandPrefix, []string{
|
||||||
@@ -904,7 +904,7 @@ func (op *AgentOsOperator) installDockerExec(args []string) (bool, []string) {
|
|||||||
if !op.CanAccessInternet || op.IsOsTypeEuler {
|
if !op.CanAccessInternet || op.IsOsTypeEuler {
|
||||||
// offline version
|
// offline version
|
||||||
log.InfoF("[installDockerExec] - centos can not access to internet, installing by offline !")
|
log.InfoF("[installDockerExec] - centos can not access to internet, installing by offline !")
|
||||||
return op.installDockerOfflineExec(args)
|
return op.InstallDockerBastion()
|
||||||
}
|
}
|
||||||
|
|
||||||
// download
|
// download
|
||||||
@@ -946,113 +946,6 @@ func (op *AgentOsOperator) installDockerExec(args []string) (bool, []string) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
func (op *AgentOsOperator) installDockerOfflineExec(args []string) (bool, []string) {
|
|
||||||
|
|
||||||
log.InfoF("[installDockerOfflineExec] - install docker 20.10.15 by offline method !")
|
|
||||||
BasicCreateFolder("/root/wdd")
|
|
||||||
|
|
||||||
// download static binary installer of docker
|
|
||||||
var dockerOfflineFileName string
|
|
||||||
if strings.HasPrefix(op.AgentArch, "amd") {
|
|
||||||
dockerOfflineFileName = "docker-amd64-20.10.15.tgz"
|
|
||||||
} else if strings.HasPrefix(op.AgentArch, "arm64") {
|
|
||||||
dockerOfflineFileName = "docker-arm64-20.10.15.tgz"
|
|
||||||
}
|
|
||||||
|
|
||||||
ok, resultLog := BasicDownloadFile(op.OssOfflinePrefix+dockerOfflineFileName, "", "", "", OctopusAgentInstallPrefix+dockerOfflineFileName)
|
|
||||||
if !ok {
|
|
||||||
return false, resultLog
|
|
||||||
}
|
|
||||||
|
|
||||||
BasicRemoveFolderComplete("/root/wdd/docker")
|
|
||||||
|
|
||||||
PureResultSingleExecute([]string{
|
|
||||||
"tar",
|
|
||||||
"-vxf",
|
|
||||||
OctopusAgentInstallPrefix + dockerOfflineFileName,
|
|
||||||
"-C",
|
|
||||||
"/root/wdd",
|
|
||||||
})
|
|
||||||
|
|
||||||
HardCodeCommandExecutor("chmod 777 -R /root/wdd/docker/*")
|
|
||||||
|
|
||||||
resultOk, l := HardCodeCommandExecutor("mv /root/wdd/docker/* /usr/bin")
|
|
||||||
if !resultOk {
|
|
||||||
return false, append(l, "[installDockerOfflineExec] - cp docker executable file error!")
|
|
||||||
}
|
|
||||||
|
|
||||||
// systemd daemonize docker
|
|
||||||
downloadOk, log2 := BasicDownloadFile(op.OssOfflinePrefix+"docker-containerd-daemon.service", "", "", "", beans.ContainerdServiceFile)
|
|
||||||
if !downloadOk {
|
|
||||||
return false, append(log2, "[installDockerOfflineExec] - daemon file download error !")
|
|
||||||
}
|
|
||||||
|
|
||||||
downloadOk, log2 = BasicDownloadFile(op.OssOfflinePrefix+"docker-socket-daemon.service", "", "", "", beans.DockerSocketDaemonService)
|
|
||||||
if !downloadOk {
|
|
||||||
return false, append(log2, "[installDockerOfflineExec] - daemon file download error !")
|
|
||||||
}
|
|
||||||
|
|
||||||
downloadOk, log2 = BasicDownloadFile(op.OssOfflinePrefix+"docker-daemon.service", "", "", "", beans.DockerServiceFile)
|
|
||||||
if !downloadOk {
|
|
||||||
return false, append(log2, "[installDockerOfflineExec] - daemon file download error !")
|
|
||||||
}
|
|
||||||
|
|
||||||
// run the docker
|
|
||||||
executor, log3 := AllCommandExecutor([]string{
|
|
||||||
"systemctl",
|
|
||||||
"daemon-reload",
|
|
||||||
})
|
|
||||||
if !executor {
|
|
||||||
return false, append(log3, "[installDockerOfflineExec] - daemon reload error !")
|
|
||||||
}
|
|
||||||
|
|
||||||
AllCompleteExecutor([][]string{
|
|
||||||
{
|
|
||||||
"groupadd",
|
|
||||||
"docker",
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"usermod",
|
|
||||||
"-aG",
|
|
||||||
"docker",
|
|
||||||
"root",
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"newgrp",
|
|
||||||
"docker",
|
|
||||||
},
|
|
||||||
})
|
|
||||||
|
|
||||||
systemdUp, log5 := BasicSystemdUp("containerd")
|
|
||||||
if !systemdUp {
|
|
||||||
return false, append(log5, "[installDockerOfflineExec] - start containerd service error !")
|
|
||||||
}
|
|
||||||
|
|
||||||
commandExecutor, log6 := AllCompleteExecutor([][]string{
|
|
||||||
{
|
|
||||||
"systemctl",
|
|
||||||
"start",
|
|
||||||
"docker.socket",
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"systemctl",
|
|
||||||
"enable",
|
|
||||||
"docker.socket",
|
|
||||||
},
|
|
||||||
})
|
|
||||||
if !commandExecutor {
|
|
||||||
return false, append(log6, "[installDockerOfflineExec] - start docker.socket error !")
|
|
||||||
}
|
|
||||||
|
|
||||||
up, log4 := BasicSystemdUp("docker")
|
|
||||||
if !up {
|
|
||||||
return false, append(log4, "[installDockerOfflineExec] - start docker service error !")
|
|
||||||
}
|
|
||||||
|
|
||||||
return true, []string{
|
|
||||||
"[installDockerOfflineExec] - docker offline installation success!",
|
|
||||||
}
|
|
||||||
}
|
|
||||||
func (op *AgentOsOperator) InstallDockerBastion() (bool, []string) {
|
func (op *AgentOsOperator) InstallDockerBastion() (bool, []string) {
|
||||||
|
|
||||||
// check offline file exits
|
// check offline file exits
|
||||||
|
|||||||
@@ -97,7 +97,7 @@ public class TestBaseFuncScheduler {
|
|||||||
BaseFunctionEnum.DISABLE_SELINUX,
|
BaseFunctionEnum.DISABLE_SELINUX,
|
||||||
BaseFunctionEnum.MODIFY_SYSCONFIG,
|
BaseFunctionEnum.MODIFY_SYSCONFIG,
|
||||||
BaseFunctionEnum.SHUTDOWN_FIREWALL,
|
BaseFunctionEnum.SHUTDOWN_FIREWALL,
|
||||||
BaseFunctionEnum.INSTALL_DOCKER,
|
BaseFunctionEnum.INSTALL_DOCKER_OFFLINE,
|
||||||
BaseFunctionEnum.INSTALL_DEFAULT_SSH_KEY,
|
BaseFunctionEnum.INSTALL_DEFAULT_SSH_KEY,
|
||||||
BaseFunctionEnum.INSTALL_DOCKER_COMPOSE,
|
BaseFunctionEnum.INSTALL_DOCKER_COMPOSE,
|
||||||
BaseFunctionEnum.MODIFY_DOCKER_CONFIG,
|
BaseFunctionEnum.MODIFY_DOCKER_CONFIG,
|
||||||
|
|||||||
Reference in New Issue
Block a user