重构 package.yaml

This commit is contained in:
Shao Huan Qing
2022-01-05 17:19:05 +08:00
parent ac17b679f5
commit 5607a7873b
3 changed files with 31 additions and 27 deletions

View File

@ -8,7 +8,7 @@
<div class="package_info">
<PackageContentField :holder="resourcePackage.metadata" fieldName="version" label="资源包版本"></PackageContentField>
<PackageContentField :holder="resourcePackage.metadata" fieldName="issue_date" label="发布时间"></PackageContentField>
<PackageContentField :holder="resourcePackage.metadata" fieldName="kubespray_version"></PackageContentField>
<PackageContentField :holder="resourcePackage.data" fieldName="kubespray_version"></PackageContentField>
</div>
</el-collapse-item>
<el-collapse-item name="2">
@ -17,17 +17,17 @@
</template>
<div class="package_info">
<el-form-item label="操作系统">
<div v-for="(item, key) in resourcePackage.supported_os" :key="'os' + key">
<div v-for="(item, key) in resourcePackage.metadata.supported_os" :key="'os' + key">
<el-tag effect="dark" size="mini">{{item.distribution}}</el-tag>
<el-tag style="margin-left: 10px;" size="mini" v-for="(version, i) in item.versions" :key="'v' + key + '' + i">{{version}}</el-tag>
</div>
</el-form-item>
<PackageContentField :holder="resourcePackage.kubernetes" fieldName="image_arch"></PackageContentField>
<PackageContentField :holder="resourcePackage.kubernetes" fieldName="gcr_image_repo"></PackageContentField>
<PackageContentField :holder="resourcePackage.kubernetes" fieldName="kube_image_repo"></PackageContentField>
<PackageContentField :holder="resourcePackage.kubernetes" fieldName="kube_version"></PackageContentField>
<PackageContentField :holder="resourcePackage.data.kubernetes" fieldName="image_arch"></PackageContentField>
<PackageContentField :holder="resourcePackage.data.kubernetes" fieldName="gcr_image_repo"></PackageContentField>
<PackageContentField :holder="resourcePackage.data.kubernetes" fieldName="kube_image_repo"></PackageContentField>
<PackageContentField :holder="resourcePackage.data.kubernetes" fieldName="kube_version"></PackageContentField>
<el-form-item label="容器引擎">
<div v-for="(engine, index) in resourcePackage.container_engine" :key="'ce' + index">
<div v-for="(engine, index) in resourcePackage.data.container_engine" :key="'ce' + index">
<el-tag size="mini">
<span class="app_text_mono">{{engine.container_manager}}_{{engine.params.containerd_version || engine.params.docker_version}}</span>
</el-tag>
@ -40,9 +40,9 @@
<span class="package_title">etcd</span>
</template>
<div class="package_info">
<PackageContentField :holder="resourcePackage.etcd" fieldName="etcd_version"></PackageContentField>
<PackageContentField :holder="resourcePackage.data.etcd" fieldName="etcd_version"></PackageContentField>
<el-form-item label="etcd_deployment_type">
<div v-for="(item, key) in resourcePackage.etcd.etcd_deployment_type" :key="'k' + key">
<div v-for="(item, key) in resourcePackage.data.etcd.etcd_deployment_type" :key="'k' + key">
<el-tag size="mini">{{item}}</el-tag>
</div>
</el-form-item>
@ -50,15 +50,18 @@
</el-collapse-item>
<el-collapse-item name="4">
<template #title>
<span class="package_title">cni</span>
<span class="package_title">网络插件</span>
</template>
<div class="package_info">
<div v-for="(item, index) in resourcePackage.cni" :key="index + 'cni'">
<el-form-item :label="item.target">
<div class="app_text_mono" style="font-size: 13px">
{{item.version}}
</div>
</el-form-item>
<div v-for="(item, index) in resourcePackage.data.network_plugin" :key="index + 'network_plugin'">
<div style="font-weight: bolder;">{{item.name}}</div>
<div class="package_info">
<el-form-item v-for="(value, key) in item.params" :key="index + 'p' + key" :label="key" label-width="180px">
<div class="app_text_mono" style="font-size: 13px" >
{{value}}
</div>
</el-form-item>
</div>
</div>
</div>
</el-collapse-item>
@ -67,7 +70,7 @@
<span class="package_title">依赖组件</span>
</template>
<div class="package_info">
<div v-for="(item, index) in resourcePackage.dependency" :key="index + 'dependency'">
<div v-for="(item, index) in resourcePackage.data.dependency" :key="index + 'dependency'">
<el-form-item :label="item.target">
<div class="app_text_mono" style="font-size: 13px">
{{item.version}}
@ -81,7 +84,7 @@
<span class="package_title">可选组件</span>
</template>
<div class="package_info">
<div v-for="(item, index) in resourcePackage.addons" :key="index + 'addons'">
<div v-for="(item, index) in resourcePackage.data.addon" :key="index + 'addons'">
<el-form-item>
<template #label>
<div style="font-weight: bolder;">{{item.name}}</div>

View File

@ -94,10 +94,11 @@ docker load < /root/kuboard-spray-resource.tar
},
loadYaml: {
get () {
return yaml.dump({
let temp = {
downloadFrom: this.downloadFrom,
package: this.resourcePackage,
})
}
temp = Object.assign(temp, this.resourcePackage)
return yaml.dump(temp)
},
set () {},
}

View File

@ -13,14 +13,14 @@
</template>
<template #cell(container_engine)="data">
<div v-if="data.item.package">
<div v-for="(engine, key) in data.item.package.container_engine" :key="`c${data.index}_${key}`">
<div v-for="(engine, key) in data.item.package.data.container_engine" :key="`c${data.index}_${key}`">
<b-badge>{{ engine.container_manager }}_{{ engine.params[engine.container_manager + '_version'] }}</b-badge>
</div>
</div>
</template>
<template #cell(supported_os)="data">
<div v-if="data.item.package">
<div v-for="(os, key) in data.item.package.supported_os" :key="`os${data.index}_${key}`">
<div v-for="(os, key) in data.item.package.metadata.supported_os" :key="`os${data.index}_${key}`">
<b-badge>
{{ os.distribution }}<span
v-for="(v, i) in os.versions" :key="key + 'v' + i">_{{v}}</span>
@ -75,8 +75,8 @@ export default {
importedPackageMap: {},
fields: [
{ key: 'version', label: '版 本' },
{ key: 'package.metadata.kubespray_version', label: 'Kubespray' },
{ key: 'package.kubernetes.kube_version', label: 'Kubernetes' },
{ key: 'package.data.kubespray_version', label: 'Kubespray' },
{ key: 'package.data.kubernetes.kube_version', label: 'Kubernetes' },
{ key: 'container_engine', label: '容器引擎'},
{ key: 'supported_os', label: '操作系统'},
{ key: 'action', label: '操 作'},
@ -109,7 +109,7 @@ export default {
this.importedPackageMap = {}
this.packageMap = {}
this.availablePackageList = undefined
await axios.get('https://addons.kuboard.cn/v-kuboard-spray-resources/package-list.yaml?nocache=' + new Date().getTime()).then(resp => {
await axios.get('https://addons.kuboard.cn/v-kuboard-spray/package-list.yaml?nocache=' + new Date().getTime()).then(resp => {
this.availablePackageList = yaml.load(resp.data).items
}).catch(e => {
console.log(e)
@ -122,7 +122,7 @@ export default {
}
},
loadPackageFromRepository (packageVersion) {
axios.get(`https://addons.kuboard.cn/v-kuboard-spray-resources/${packageVersion.version}/package.yaml?nocache=${new Date().getTime()}`).then(resp => {
axios.get(`https://addons.kuboard.cn/v-kuboard-spray/${packageVersion.version}/package.yaml?nocache=${new Date().getTime()}`).then(resp => {
setTimeout(() => {
this.$set(packageVersion, 'package', yaml.load(resp.data))
this.$set(packageVersion, 'loaded', true)