Просмотр исходного кода

Add separated Harvester provider support

The Harvester provider got separated from the KubeVirt provider, thus this
patch handles this separation along with new logo additions.
Daniel Vincze 10 месяцев назад
Родитель
Сommit
162106b188

+ 2 - 0
config.ts

@@ -147,6 +147,7 @@ const conf: Config = {
     azure: 2,
     "hyper-v": 2,
     kubevirt: 2,
+    harvester: 2,
     scvmm: 2,
     oci: 3,
     opc: 3,
@@ -168,6 +169,7 @@ const conf: Config = {
     azure: "Azure",
     "hyper-v": "Hyper-V",
     kubevirt: "KubeVirt",
+    harvester: "SUSE Virtualization",
     scvmm: "SCVMM",
     oci: "OCI",
     opca: "Oracle Private Cloud Appliance",

Разница между файлами не показана из-за своего большого размера
+ 43 - 0
server/api/resources/providerLogos/harvester-128-disabled.svg


Разница между файлами не показана из-за своего большого размера
+ 41 - 0
server/api/resources/providerLogos/harvester-128.svg


Разница между файлами не показана из-за своего большого размера
+ 43 - 0
server/api/resources/providerLogos/harvester-32-white.svg


Разница между файлами не показана из-за своего большого размера
+ 43 - 0
server/api/resources/providerLogos/harvester-32.svg


Разница между файлами не показана из-за своего большого размера
+ 43 - 0
server/api/resources/providerLogos/harvester-42.svg


Разница между файлами не показана из-за своего большого размера
+ 41 - 0
server/api/resources/providerLogos/harvester-64.svg


+ 1 - 0
src/@types/Providers.ts

@@ -28,6 +28,7 @@ export type ProviderTypes =
   | "scvmm"
   | "olvm"
   | "kubevirt"
+  | "harvester"
   | "metal"
   | "rhev"
   | "lxd";

+ 17 - 0
src/plugins/harvester/ConnectionSchemaPlugin.ts

@@ -0,0 +1,17 @@
+/*
+Copyright (C) 2025  Cloudbase Solutions SRL
+This program is free software: you can redistribute it and/or modify
+it under the terms of the GNU Affero General Public License as
+published by the Free Software Foundation, either version 3 of the
+License, or (at your option) any later version.
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+GNU Affero General Public License for more details.
+You should have received a copy of the GNU Affero General Public License
+along with this program.  If not, see <http://www.gnu.org/licenses/>.
+*/
+
+import ConnectionSchemaParser from "@src/plugins/kubevirt/ConnectionSchemaPlugin";
+
+export default class HarvesterConnectionSchemaPlugin extends ConnectionSchemaParser {}

+ 2 - 0
src/plugins/index.ts

@@ -21,6 +21,7 @@ import OciConnectionSchemaPlugin from "./oci/ConnectionSchemaPlugin";
 import OpcaConnectionSchemaPlugin from "./opca/ConnectionSchemaPlugin";
 import O3cConnectionSchemaPlugin from "./o3c/ConnectionSchemaPlugin";
 import KubevirtConnectionSchemaPlugin from "./kubevirt/ConnectionSchemaPlugin";
+import HarvesterConnectionSchemaPlugin from "./harvester/ConnectionSchemaPlugin";
 
 import DefaultContentPlugin from "./default/ContentPlugin";
 import AzureContentPlugin from "./azure/ContentPlugin";
@@ -59,6 +60,7 @@ export const ConnectionSchemaPlugin = {
       opca: new OpcaConnectionSchemaPlugin(),
       o3c: new O3cConnectionSchemaPlugin(),
       kubevirt: new KubevirtConnectionSchemaPlugin(),
+      harvester: new HarvesterConnectionSchemaPlugin(),
     };
     if (hasKey(map, provider)) {
       return map[provider];

+ 3 - 0
tests/mocks/ProvidersMock.ts

@@ -44,6 +44,9 @@ export const PROVIDERS_MOCK: Providers = {
   kubevirt: {
     types: [],
   },
+  harvester: {
+    types: [],
+  },
   metal: {
     types: [],
   },

Некоторые файлы не были показаны из-за большого количества измененных файлов