Skip to content

Commit 8bbc40c

Browse files
Merge branch 'master' of github.com:KubeOperator/ekko
2 parents c7c2871 + 8408825 commit 8bbc40c

File tree

6 files changed

+72
-52
lines changed

6 files changed

+72
-52
lines changed

web/dashboard/src/business/dashboard/index.vue

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
<span class="title">{{ $t("commons.table.name") }}</span>
99
<div style="text-align: center">
1010
<el-tooltip class="item" effect="dark" :content="cluster.name" placement="top">
11-
<h1>{{ cluster.name }}</h1>
11+
<h1>{{ cluster.name | max15letter }}</h1>
1212
</el-tooltip>
1313
</div>
1414
</el-col>

web/dashboard/src/business/workloads/index.vue

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -661,11 +661,11 @@ export default {
661661
})
662662
},
663663
handleSecret(ps) {
664-
if (!this.podMetadata.annotations) {
664+
if (!this.podMetadata.labels) {
665665
return ps
666666
}
667-
let operation = this.podMetadata.annotations["operation"]
668-
for (const key in this.podMetadata.annotations) {
667+
let operation = this.podMetadata.labels["operation"]
668+
for (const key in this.podMetadata.labels) {
669669
if (key.indexOf("kubepi-repo-") !== -1 && key.indexOf("/") !== -1) {
670670
let repoName = key.split("/")[1]
671671
let secretName = "kubepi-" + key.split("/")[1] + "-secret"
@@ -725,7 +725,7 @@ export default {
725725
},
726726
onEdit(data) {
727727
let ps = []
728-
if (this.podMetadata.annotations && this.podMetadata.annotations["operation"] === "update") {
728+
if (this.podMetadata.labels && this.podMetadata.labels["operation"] === "update") {
729729
ps = this.handleSecret(ps)
730730
}
731731
Promise.all(ps).then(() => {

web/dashboard/src/components/ko-workloads/ko-container.vue

Lines changed: 40 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
<el-row :gutter="20">
55
<el-col :span="12">
66
<el-form-item :label="$t('business.workload.container_name')" prop="name">
7-
<ko-form-item itemType="input" @input="changeName" v-model="form.name"/>
7+
<ko-form-item itemType="input" @input="changeName" v-model="form.name" />
88
</el-form-item>
99
</el-col>
1010
</el-row>
@@ -20,7 +20,7 @@
2020
</el-col>
2121
<el-col :span="8">
2222
<el-form-item :label="$t('business.workload.container_image')" prop="image" :rules="inputRule" v-if="repo.name===''">
23-
<ko-form-item placeholder="e.g. nginx:latest" itemType="input" v-model="form.image"/>
23+
<ko-form-item placeholder="e.g. nginx:latest" itemType="input" v-model="form.image" />
2424
</el-form-item>
2525
<el-form-item :label="$t('business.workload.container_image')" prop="image" :rules="selectRule" v-else>
2626
<el-select v-model="form.image" @change="changeImage(form.image)" style="width: 100%" filterable>
@@ -31,8 +31,7 @@
3131
</el-col>
3232
<el-col :span="4">
3333
<el-form-item :label="$t('business.workload.pull_policy')" prop="imagePullPolicy">
34-
<ko-form-item itemType="select" :noClear="true" v-model="form.imagePullPolicy"
35-
:selections="image_pull_policy_list"/>
34+
<ko-form-item itemType="select" :noClear="true" v-model="form.imagePullPolicy" :selections="image_pull_policy_list" />
3635
</el-form-item>
3736
</el-col>
3837
</el-row>
@@ -46,7 +45,7 @@
4645
<script>
4746
import KoFormItem from "@/components/ko-form-item/index"
4847
import Rule from "@/utils/rules"
49-
import {getRepo, listImages} from "../../../../kubepi/src/api/imagerepos"
48+
import { getRepo, listImages } from "../../../../kubepi/src/api/imagerepos"
5049
5150
export default {
5251
name: "KoContainer",
@@ -72,17 +71,17 @@ export default {
7271
},
7372
metadata: {
7473
handler(newObj) {
75-
if (newObj?.annotations){
74+
if (newObj?.labels) {
7675
this.cluster = this.$route.query.cluster
7776
let itemName = ""
78-
if(this.containerType === "initContainers") {
79-
itemName = "kubepi-repo-init-" + this.containerParentObj.name + "/"
77+
if (this.containerType === "initContainers") {
78+
itemName = "kubepi-repo-init-" + this.containerParentObj.name
8079
} else {
81-
itemName = "kubepi-repo-" + this.containerParentObj.name + "/"
80+
itemName = "kubepi-repo-" + this.containerParentObj.name
8281
}
83-
for (const key in newObj.annotations) {
84-
if (key.indexOf(itemName) !== -1) {
85-
this.repo.name = key.replace(itemName, "")
82+
for (const key in newObj.labels) {
83+
if (key === itemName) {
84+
this.repo.name = newObj.labels[itemName]
8685
this.changeRepo(this.repo.name)
8786
break
8887
}
@@ -93,7 +92,7 @@ export default {
9392
deep: true,
9493
},
9594
},
96-
data () {
95+
data() {
9796
return {
9897
form: {
9998
name: "",
@@ -104,7 +103,7 @@ export default {
104103
name: "",
105104
images: [],
106105
image: "",
107-
repo: {}
106+
repo: {},
108107
},
109108
checked: false,
110109
rules: {
@@ -118,58 +117,65 @@ export default {
118117
{ label: "Never", value: "Never" },
119118
],
120119
cluster: "",
121-
repos: []
120+
repos: [],
122121
}
123122
},
124123
methods: {
125-
changeName (val) {
124+
changeName(val) {
126125
this.$emit("updateContanerList", val)
127126
},
128-
checkIsValid () {
127+
checkIsValid() {
129128
let isValid = true
130129
this.$refs["form"].validate((valid) => {
131130
isValid = valid
132131
})
133132
return isValid
134133
},
135-
transformation (parentFrom, metadata) {
134+
transformation(parentFrom, metadata) {
136135
parentFrom.name = this.form.name || undefined
137136
parentFrom.image = this.form.image || undefined
138137
parentFrom.imagePullPolicy = this.form.imagePullPolicy || undefined
139-
if (this.repo.name === "") {
140-
return
138+
if (!metadata.labels) {
139+
metadata.labels = {}
140+
} else {
141+
for (let key in metadata.labels) {
142+
if (key.indexOf("kubepi-repo-") !== -1) {
143+
delete metadata.labels[key]
144+
}
145+
}
141146
}
142-
if (!metadata.annotations) {
143-
metadata.annotations = {}
147+
if (this.repo.name === "") {
148+
delete metadata.labels["operation"]
149+
return
144150
}
145151
let secrets = ""
146152
if (this.containerType === "standardContainers") {
147-
secrets = "kubepi-repo-" + parentFrom.name + "/" + this.repo.name
153+
secrets = "kubepi-repo-" + parentFrom.name
148154
} else {
149-
secrets = "kubepi-repo-init-" + parentFrom.name + "/" + this.repo.name
155+
secrets = "kubepi-repo-init-" + parentFrom.name
150156
}
151-
metadata.annotations[secrets] = this.form.image
152-
metadata.annotations["operation"] = this.checked ? "update" : "check"
157+
metadata.labels[secrets] = this.repo.name
158+
metadata.labels["operation"] = this.checked ? "update" : "check"
153159
},
154-
changeRepo (repo) {
160+
changeRepo(repo) {
155161
this.repo.images = []
156162
if (repo === "") {
157163
this.repo.repo = {}
158164
this.repo.name = ""
159165
return
160166
}
161-
listImages(this.cluster, repo).then(res => {
167+
listImages(this.cluster, repo).then((res) => {
162168
this.repo.images = res.data
163169
})
164-
getRepo(repo).then(res => {
170+
getRepo(repo).then((res) => {
165171
this.repo.repo = res.data
166172
})
167173
},
168-
changeImage (image) {
174+
changeImage(image) {
169175
this.form.image = image
170-
}
176+
},
171177
},
172-
mounted () {
178+
mounted() {
173179
if (this.containerParentObj) {
174180
if (this.containerParentObj.name) {
175181
this.form.name = this.containerParentObj.name
@@ -182,8 +188,8 @@ export default {
182188
}
183189
}
184190
},
185-
created () {
191+
created() {
186192
this.cluster = this.$route.query.cluster
187-
}
193+
},
188194
}
189195
</script>

web/dashboard/src/components/ko-workloads/ko-kv-table.vue

Lines changed: 20 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -194,20 +194,33 @@ export default {
194194
return row.key === "kubepi.org/name"
195195
},
196196
transformation(parentForm, podMetadata) {
197+
if (!podMetadata.labels) {
198+
podMetadata.labels = {}
199+
}
197200
if (this.isCreate) {
198201
let labels = parseArryToObj(this.labels)
199-
parentForm.spec.selector = { matchLabels: labels }
200-
podMetadata.labels = labels
201-
parentForm.metadata.labels = labels
202+
parentForm.spec.selector = { matchLabels: {} }
203+
for (const key in labels) {
204+
podMetadata.labels[key] = labels[key]
205+
if (key.indexOf("kubepi-repo-") === -1) {
206+
parentForm.metadata.labels[key] = labels[key]
207+
parentForm.spec.selector.matchLabels[key] = labels[key]
208+
}
209+
}
202210
parentForm.metadata.annotations = parseArryToObj(this.annotations)
203211
return
204212
}
213+
205214
let selectors = parseArryToObj(this.selectors)
206-
parentForm.spec.selector = { matchLabels: selectors }
207-
podMetadata.labels = selectors
208-
parentForm.metadata.labels = selectors
209-
parentForm.metadata.annotations = parseArryToObj(this.annotations)
215+
parentForm.spec.selector = { matchLabels: {} }
216+
for (const key in selectors) {
217+
podMetadata.labels[key] = selectors[key]
218+
if (key.indexOf("kubepi-repo-") === -1) {
219+
parentForm.spec.selector.matchLabels[key] = selectors[key]
220+
}
221+
}
210222
parentForm.metadata.labels = parseArryToObj(this.labels)
223+
parentForm.metadata.annotations = parseArryToObj(this.annotations)
211224
},
212225
},
213226
mounted() {

web/dashboard/src/components/ko-workloads/ko-spec/ko-spec-base.vue

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -125,13 +125,13 @@ export default {
125125
for (const item of this.form.imagePullSecrets) {
126126
imagePullSecrets.push({ name: item })
127127
}
128-
if (!metadata.annotations) {
128+
if (!metadata.labels) {
129129
parentFrom.imagePullSecrets = imagePullSecrets.length !== 0 ? imagePullSecrets : undefined
130130
return
131131
}
132-
for (const key in metadata.annotations) {
133-
if (key.indexOf("kubepi-repo-") !== -1 && key.indexOf("/") !== -1) {
134-
let secretName = "kubepi-" + key.split("/")[1] + "-secret"
132+
for (const key in metadata.labels) {
133+
if (key.indexOf("kubepi-repo-") !== -1) {
134+
let secretName = "kubepi-" + metadata.labels[key] + "-secret"
135135
if (!this.existSecret(secretName, imagePullSecrets)) {
136136
imagePullSecrets.push({ name: secretName })
137137
}

web/dashboard/src/components/ko-workloads/ko-volume.vue

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -293,13 +293,14 @@ export default {
293293
let itemClild = {}
294294
if (volume.configMap) {
295295
item.type = "ConfigMap"
296-
item.items = volume.items || []
297296
itemClild = volume.configMap
297+
item.items = volume.configMap.items || []
298298
}
299299
if (volume.secret) {
300300
item.type = "Secret"
301-
item.items = volume.items || []
302301
itemClild = volume.secret
302+
item.items = volume.secret.items || []
303+
item.resource = volume.secret.secretName
303304
}
304305
if (volume.persistentVolumeClaim) {
305306
item.type = "PVC"

0 commit comments

Comments
 (0)