Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
H
holmes
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
QA
holmes
Commits
3af4194d
Commit
3af4194d
authored
Jul 12, 2021
by
黎博
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
新增接口
parent
20b7fa3e
Changes
4
Expand all
Show whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
322 additions
and
11 deletions
+322
-11
DockerProjectController.java
.../cn/qg/holmes/controller/k8s/DockerProjectController.java
+68
-0
K8sController.java
src/main/java/cn/qg/holmes/controller/k8s/K8sController.java
+20
-1
DockerProject.java
src/main/java/cn/qg/holmes/entity/k8s/DockerProject.java
+5
-1
TkeService.java
src/main/java/cn/qg/holmes/service/k8s/TkeService.java
+229
-9
No files found.
src/main/java/cn/qg/holmes/controller/k8s/DockerProjectController.java
0 → 100644
View file @
3af4194d
package
cn
.
qg
.
holmes
.
controller
.
k8s
;
import
cn.qg.holmes.common.JsonResult
;
import
cn.qg.holmes.entity.k8s.DockerProject
;
import
cn.qg.holmes.service.k8s.DockerProjectService
;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.web.bind.annotation.*
;
import
java.util.HashMap
;
import
java.util.Map
;
@CrossOrigin
@RestController
@RequestMapping
(
"/docker/project"
)
public
class
DockerProjectController
{
@Autowired
DockerProjectService
dockerProjectService
;
/**
* 获取docker project列表
* @param pageNum 第几页
* @param pageSize 每页多少个
* @return
*/
@GetMapping
(
"/list"
)
public
JsonResult
getDockerProjectList
(
@RequestParam
(
defaultValue
=
"1"
)
Integer
pageNum
,
@RequestParam
(
defaultValue
=
"10"
)
Integer
pageSize
)
{
IPage
<
DockerProject
>
dockerProjectIPage
=
new
Page
<>(
pageNum
,
pageSize
);
IPage
projectIPage
=
dockerProjectService
.
page
(
dockerProjectIPage
);
Map
<
String
,
Object
>
map
=
new
HashMap
<>();
map
.
put
(
"total"
,
projectIPage
.
getTotal
());
map
.
put
(
"list"
,
projectIPage
.
getRecords
());
return
JsonResult
.
buildSuccessResult
(
map
);
}
/**
* 新增docker project
* @param dockerProject docker项目实体类
* @return
*/
@PostMapping
(
"/add"
)
public
JsonResult
addDockerProject
(
@RequestBody
DockerProject
dockerProject
)
{
return
JsonResult
.
buildSuccessResult
(
dockerProjectService
.
save
(
dockerProject
));
}
/**
* 编辑docker project
* @param dockerProject docker项目实体类
* @return
*/
@PostMapping
(
"/edit"
)
public
JsonResult
editDockerProject
(
@RequestBody
DockerProject
dockerProject
)
{
return
JsonResult
.
buildSuccessResult
(
dockerProjectService
.
saveOrUpdate
(
dockerProject
));
}
/**
* 删除docker project
* @param dockerProjectId 删除id
* @return
*/
@GetMapping
(
"/del"
)
public
JsonResult
delDockerProject
(
@RequestParam
Integer
dockerProjectId
)
{
return
JsonResult
.
buildSuccessResult
(
dockerProjectService
.
removeById
(
dockerProjectId
));
}
}
src/main/java/cn/qg/holmes/controller/k8s/K8sController.java
View file @
3af4194d
...
...
@@ -70,10 +70,17 @@ public class K8sController {
public
JsonResult
createPod
(
@RequestBody
ServiceCreateVo
serviceCreateVo
)
{
try
{
String
serviceName
=
serviceCreateVo
.
getServiceName
();
String
type
=
serviceCreateVo
.
getType
();
QueryWrapper
<
DockerProject
>
queryWrapper
=
new
QueryWrapper
<>();
queryWrapper
.
eq
(
"project_name"
,
serviceName
);
DockerProject
dockerProject
=
dockerProjectService
.
getOne
(
queryWrapper
);
if
(
type
.
equals
(
"java"
))
{
tkeService
.
createJavaDeployment
(
serviceCreateVo
,
dockerProject
);
}
else
if
(
type
.
equals
(
"ui"
)
||
type
.
equals
(
"node"
))
{
tkeService
.
createUIAndNodeDeployment
(
serviceCreateVo
,
dockerProject
);
}
else
{
return
JsonResult
.
buildErrorStateResult
(
"暂不支持!"
,
false
);
}
return
JsonResult
.
buildSuccessResult
(
"pod创建成功!"
);
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
...
...
@@ -92,6 +99,18 @@ public class K8sController {
return
JsonResult
.
buildSuccessResult
(
tkeService
.
resetPod
(
namespace
,
podName
));
}
/**
* 更新部署
* @param namespace 环境
* @param serviceName 服务名
* @param image 镜像名
* @return
*/
@PostMapping
(
"/pod/modify"
)
public
JsonResult
modifyPod
(
String
namespace
,
String
serviceName
,
String
image
)
{
return
JsonResult
.
buildSuccessResult
(
tkeService
.
updateDeployment
(
namespace
,
serviceName
,
image
));
}
/**
* 删除pod
* @param namespace 环境
...
...
src/main/java/cn/qg/holmes/entity/k8s/DockerProject.java
View file @
3af4194d
package
cn
.
qg
.
holmes
.
entity
.
k8s
;
import
com.baomidou.mybatisplus.annotation.IdType
;
import
com.baomidou.mybatisplus.annotation.TableField
;
import
com.baomidou.mybatisplus.annotation.TableId
;
import
com.baomidou.mybatisplus.annotation.TableName
;
import
com.fasterxml.jackson.annotation.JsonFormat
;
...
...
@@ -24,19 +25,22 @@ public class DockerProject {
private
String
hostName
;
private
String
logPath
;
private
String
configPath
;
@TableField
(
value
=
"`desc`"
)
private
String
desc
;
@TableField
(
value
=
"`owner`"
)
private
String
owner
;
private
String
buildCommand
;
private
String
startCommand
;
private
String
stopCommand
;
private
Integer
deployToDocker
;
private
Integer
isActive
;
@TableField
(
value
=
"`database`"
)
private
String
database
;
private
String
ddl
;
private
String
wiki
;
private
String
api
;
private
String
memLimit
;
private
String
me
n
Request
;
private
String
me
m
Request
;
private
String
cpuLimit
;
private
String
cpuRequest
;
private
Integer
sonar
;
...
...
src/main/java/cn/qg/holmes/service/k8s/TkeService.java
View file @
3af4194d
This diff is collapsed.
Click to expand it.
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment