添加删除runner功能
This commit is contained in:
@@ -171,6 +171,16 @@ func RunnerDeletePost(ctx *context.Context, runnerID int64,
|
||||
ctx.JSONRedirect(failedRedirectTo)
|
||||
return
|
||||
}
|
||||
runner, err := actions_model.GetRunnerByID(ctx, runnerID)
|
||||
if err != nil {
|
||||
log.Warn("DeleteRunnerPost.DeleteRunnerContainer failed: %v, url: %s", err, ctx.Req.URL)
|
||||
}
|
||||
runnerName := runner.Name
|
||||
|
||||
err = runner_services.DeleteRunnerByName(ctx, runnerName)
|
||||
if err != nil {
|
||||
log.Warn("DeleteRunnerContainer failed")
|
||||
}
|
||||
|
||||
log.Info("DeleteRunnerPost success: %s", ctx.Req.URL)
|
||||
|
||||
|
||||
@@ -81,6 +81,23 @@ func RegistRunner(ctx context.Context, token string) error {
|
||||
return nil
|
||||
}
|
||||
|
||||
func DeleteRunnerByName(ctx context.Context, runnerName string) error {
|
||||
log.Info("开始停止并删除容器: %s", runnerName)
|
||||
|
||||
// 创建Docker客户端
|
||||
cli, err := docker_module.CreateDockerClient(&ctx)
|
||||
if err != nil {
|
||||
return fmt.Errorf("Docker client创建失败:%v", err)
|
||||
}
|
||||
log.Info("[StopAndRemoveContainer]Docker client创建成功")
|
||||
defer cli.Close()
|
||||
err = docker_module.DeleteContainer(cli, runnerName)
|
||||
if err != nil {
|
||||
return fmt.Errorf("Runner创建失败:%v", err)
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func getLocalIP() ([]string, error) {
|
||||
var ips []string
|
||||
interfaces, err := net.Interfaces()
|
||||
|
||||
Reference in New Issue
Block a user