feat: 新增 18 个 K8s 资源配置模板

工作负载: Pod, StatefulSet, DaemonSet, Job, CronJob
服务发现: Ingress
存储管理: PersistentVolume, PersistentVolumeClaim, StorageClass
配置与密钥: ConfigMap, Secret
安全与权限: ServiceAccount, Role, ClusterRole, RoleBinding, ClusterRoleBinding, NetworkPolicy
集群管理: Namespace

总计支持 26 个组件,覆盖 K8s 核心资源全谱
This commit is contained in:
cnbugs
2026-07-18 19:39:45 +08:00
parent 4c25ae183e
commit 4f702b833a
20 changed files with 3455 additions and 15 deletions
+81 -2
View File
@@ -6,6 +6,24 @@ import { k8sDeploymentSchema, generateK8sDeploymentYaml } from './k8s-deployment
import { k8sServiceSchema, generateK8sServiceYaml } from './k8s-service'
import { ansibleSchema, generateAnsibleCfg } from './ansible'
import { ansiblePlaybookSchema, generateAnsiblePlaybookYaml } from './ansible-playbook'
import { k8sPodSchema, generateK8sPodYaml } from './k8s-pod'
import { k8sStatefulSetSchema, generateK8sStatefulSetYaml } from './k8s-statefulset'
import { k8sDaemonSetSchema, generateK8sDaemonSetYaml } from './k8s-daemonset'
import { k8sJobSchema, generateK8sJobYaml } from './k8s-job'
import { k8sCronJobSchema, generateK8sCronJobYaml } from './k8s-cronjob'
import { k8sIngressSchema, generateK8sIngressYaml } from './k8s-ingress'
import { k8sPvSchema, generateK8sPvYaml } from './k8s-pv'
import { k8sPvcSchema, generateK8sPvcYaml } from './k8s-pvc'
import { k8sStorageClassSchema, generateK8sStorageClassYaml } from './k8s-storageclass'
import { k8sConfigMapSchema, generateK8sConfigMapYaml } from './k8s-configmap'
import { k8sSecretSchema, generateK8sSecretYaml } from './k8s-secret'
import { k8sServiceAccountSchema, generateK8sServiceAccountYaml } from './k8s-serviceaccount'
import { k8sRoleSchema, generateK8sRoleYaml } from './k8s-role'
import { k8sClusterRoleSchema, generateK8sClusterRoleYaml } from './k8s-clusterrole'
import { k8sRoleBindingSchema, generateK8sRoleBindingYaml } from './k8s-rolebinding'
import { k8sClusterRoleBindingSchema, generateK8sClusterRoleBindingYaml } from './k8s-clusterrolebinding'
import { k8sNetworkPolicySchema, generateK8sNetworkPolicyYaml } from './k8s-networkpolicy'
import { k8sNamespaceSchema, generateK8sNamespaceYaml } from './k8s-namespace'
export const schemas = {
nginx: nginxSchema,
@@ -16,6 +34,24 @@ export const schemas = {
'k8s-service': k8sServiceSchema,
ansible: ansibleSchema,
'ansible-playbook': ansiblePlaybookSchema,
'k8s-pod': k8sPodSchema,
'k8s-statefulset': k8sStatefulSetSchema,
'k8s-daemonset': k8sDaemonSetSchema,
'k8s-job': k8sJobSchema,
'k8s-cronjob': k8sCronJobSchema,
'k8s-ingress': k8sIngressSchema,
'k8s-pv': k8sPvSchema,
'k8s-pvc': k8sPvcSchema,
'k8s-storageclass': k8sStorageClassSchema,
'k8s-configmap': k8sConfigMapSchema,
'k8s-secret': k8sSecretSchema,
'k8s-serviceaccount': k8sServiceAccountSchema,
'k8s-role': k8sRoleSchema,
'k8s-clusterrole': k8sClusterRoleSchema,
'k8s-rolebinding': k8sRoleBindingSchema,
'k8s-clusterrolebinding': k8sClusterRoleBindingSchema,
'k8s-networkpolicy': k8sNetworkPolicySchema,
'k8s-namespace': k8sNamespaceSchema,
}
export const generators = {
@@ -27,6 +63,24 @@ export const generators = {
'k8s-service': generateK8sServiceYaml,
ansible: generateAnsibleCfg,
'ansible-playbook': generateAnsiblePlaybookYaml,
'k8s-pod': generateK8sPodYaml,
'k8s-statefulset': generateK8sStatefulSetYaml,
'k8s-daemonset': generateK8sDaemonSetYaml,
'k8s-job': generateK8sJobYaml,
'k8s-cronjob': generateK8sCronJobYaml,
'k8s-ingress': generateK8sIngressYaml,
'k8s-pv': generateK8sPvYaml,
'k8s-pvc': generateK8sPvcYaml,
'k8s-storageclass': generateK8sStorageClassYaml,
'k8s-configmap': generateK8sConfigMapYaml,
'k8s-secret': generateK8sSecretYaml,
'k8s-serviceaccount': generateK8sServiceAccountYaml,
'k8s-role': generateK8sRoleYaml,
'k8s-clusterrole': generateK8sClusterRoleYaml,
'k8s-rolebinding': generateK8sRoleBindingYaml,
'k8s-clusterrolebinding': generateK8sClusterRoleBindingYaml,
'k8s-networkpolicy': generateK8sNetworkPolicyYaml,
'k8s-namespace': generateK8sNamespaceYaml,
}
export const categories = [
@@ -46,9 +100,34 @@ export const categories = [
items: ['mysql', 'mongodb'],
},
{
name: '云原生',
name: 'K8S 工作负载',
icon: 'Box',
items: ['k8s-deployment', 'k8s-service'],
items: ['k8s-pod', 'k8s-deployment', 'k8s-statefulset', 'k8s-daemonset', 'k8s-job', 'k8s-cronjob'],
},
{
name: 'K8S 服务发现',
icon: 'Connection',
items: ['k8s-service', 'k8s-ingress'],
},
{
name: 'K8S 存储',
icon: 'Files',
items: ['k8s-pv', 'k8s-pvc', 'k8s-storageclass'],
},
{
name: 'K8S 配置与密钥',
icon: 'Document',
items: ['k8s-configmap', 'k8s-secret'],
},
{
name: 'K8S 安全与权限',
icon: 'Lock',
items: ['k8s-serviceaccount', 'k8s-role', 'k8s-clusterrole', 'k8s-rolebinding', 'k8s-clusterrolebinding', 'k8s-networkpolicy'],
},
{
name: 'K8S 集群管理',
icon: 'Grid',
items: ['k8s-namespace'],
},
{
name: '自动化运维',