Explorar el Código

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 hace 10 meses
padre
commit
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",

La diferencia del archivo ha sido suprimido porque es demasiado grande
+ 43 - 0
server/api/resources/providerLogos/harvester-128-disabled.svg


La diferencia del archivo ha sido suprimido porque es demasiado grande
+ 41 - 0
server/api/resources/providerLogos/harvester-128.svg


La diferencia del archivo ha sido suprimido porque es demasiado grande
+ 43 - 0
server/api/resources/providerLogos/harvester-32-white.svg


La diferencia del archivo ha sido suprimido porque es demasiado grande
+ 43 - 0
server/api/resources/providerLogos/harvester-32.svg


La diferencia del archivo ha sido suprimido porque es demasiado grande
+ 43 - 0
server/api/resources/providerLogos/harvester-42.svg


La diferencia del archivo ha sido suprimido porque es demasiado grande
+ 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: [],
   },

Algunos archivos no se mostraron porque demasiados archivos cambiaron en este cambio