Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
T
tke-eos
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
tke-eos
Commits
d73d5abd
Commit
d73d5abd
authored
Jun 13, 2019
by
智勇
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
增加更新镜像接口
parent
9d5972c1
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
28 additions
and
10 deletions
+28
-10
service.js
app/service.js
+12
-9
service.js
kubeService/service.js
+15
-0
java.yaml
yamls/java.yaml
+1
-1
No files found.
app/service.js
View file @
d73d5abd
...
...
@@ -4,7 +4,7 @@ const logger = require('koa-log4').getLogger()
const
{
ingressCreate
,
ingressDelete
}
=
require
(
'
../kubeService/ingress
'
)
const
{
projectConfig
,
defaultConfig
}
=
require
(
'
../serviceTemplate/resourceLimit
'
)
const
{
getPods
,
serviceCreate
,
getServices
,
getServiceDetail
,
service
Update
,
serviceRestart
,
serviceDele
te
,
getPods
,
serviceCreate
,
getServices
,
getServiceDetail
,
service
Restart
,
serviceDelete
,
imageUpda
te
,
}
=
require
(
'
../kubeService/service
'
)
const
router
=
new
Router
()
...
...
@@ -71,14 +71,17 @@ router.post('/modifyImage', async (ctx) => {
list
=
list
.
map
(
item
=>
(
item
.
metadata
.
labels
&&
item
.
metadata
.
labels
[
'
qcloud-app
'
])
||
item
.
metadata
.
name
)
if
(
list
.
includes
(
ctx
.
request
.
body
.
serviceName
))
{
const
data
=
ctx
.
request
.
body
if
(
!
data
.
label
)
{
data
.
label
=
data
.
type
}
const
resources
=
makeResouce
(
data
.
serviceName
,
data
.
label
)
data
.
resources
=
resources
logger
.
info
(
'
更新服务
'
,
data
)
await
serviceUpdate
(
data
)
logger
.
info
(
'
更新服务
'
,
ctx
.
request
.
body
)
await
imageUpdate
(
ctx
.
request
.
body
)
// const data = ctx.request.body
// if (!data.label) {
// data.label = data.type
// }
// const resources = makeResouce(data.serviceName, data.label)
// data.resources = resources
// logger.info('更新服务', data)
// await serviceUpdate(data)
}
else
{
await
createService
(
ctx
)
}
...
...
kubeService/service.js
View file @
d73d5abd
...
...
@@ -19,6 +19,11 @@ const makeManifest = (data) => {
if
(
!
data
.
debug
)
{
data
.
debug
=
'
"0"
'
}
if
(
data
.
label
===
'
java
'
)
{
data
.
serviceType
=
data
.
debug
===
'
"0"
'
?
'
ClusterIP
'
:
'
NodePort
'
}
const
yamlManifest
=
yamls
[
data
.
type
].
replace
(
/{{
([
A-Za-z0-9_
\.]
+
)
}}/g
,
function
()
{
if
(
_
.
get
(
data
,
arguments
[
1
],
null
)
===
null
)
{
throw
new
Error
(
`缺少模板所需变量:
${
arguments
[
1
]}
`
)
...
...
@@ -42,6 +47,7 @@ const serviceCreate = async (data) => {
switch
(
jsonObj
.
kind
)
{
case
'
Service
'
:
logger
.
info
(
'
service:
'
,
JSON
.
stringify
(
jsonObj
))
await
client
.
api
.
v1
.
namespaces
(
namespace
).
services
.
post
({
body
:
jsonObj
})
break
;
...
...
@@ -65,6 +71,13 @@ const serviceCreate = async (data) => {
}
}
const
imageUpdate
=
async
(
data
)
=>
{
const
{
namespace
,
serviceName
}
=
data
const
image
=
`ccr.ccs.tencentyun.com/
${
data
.
image
}
`
const
updateObj
=
{
spec
:
{
template
:
{
spec
:
{
containers
:
[{
name
:
serviceName
,
image
}]
}
}
}
}
await
client
.
apis
.
apps
.
v1beta1
.
namespaces
(
namespace
).
deployments
(
serviceName
).
patch
({
body
:
updateObj
})
}
const
serviceUpdate
=
async
(
data
)
=>
{
const
{
namespace
,
serviceName
}
=
data
const
yamlArray
=
makeManifest
(
data
)
...
...
@@ -86,6 +99,7 @@ const formatServiceInfo = (obj) => {
return
_
.
assign
(
portObj
,
{
clusterIp
:
obj
.
spec
.
clusterIP
,
serviceType
:
obj
.
spec
.
type
,
portMappings
:
obj
.
spec
.
ports
,
// labels: obj.metadata.labels,
})
...
...
@@ -222,4 +236,5 @@ module.exports = {
serviceUpdate
,
serviceRestart
,
serviceDelete
,
imageUpdate
,
}
yamls/java.yaml
View file @
d73d5abd
...
...
@@ -64,7 +64,7 @@ metadata:
name
:
{{
serviceName
}}
namespace
:
{{
namespace
}}
spec
:
type
:
NodePort
type
:
{{
serviceType
}}
ports
:
-
name
:
'
80'
port
:
80
...
...
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