Explorar o 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 hai 1 ano
pai
achega
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",

A diferenza do arquivo foi suprimida porque é demasiado grande
+ 43 - 0
server/api/resources/providerLogos/harvester-128-disabled.svg


A diferenza do arquivo foi suprimida porque é demasiado grande
+ 41 - 0
server/api/resources/providerLogos/harvester-128.svg


A diferenza do arquivo foi suprimida porque é demasiado grande
+ 43 - 0
server/api/resources/providerLogos/harvester-32-white.svg


A diferenza do arquivo foi suprimida porque é demasiado grande
+ 43 - 0
server/api/resources/providerLogos/harvester-32.svg


A diferenza do arquivo foi suprimida porque é demasiado grande
+ 43 - 0
server/api/resources/providerLogos/harvester-42.svg


A diferenza do arquivo foi suprimida porque é 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: [],
   },

Algúns arquivos non se mostraron porque demasiados arquivos cambiaron neste cambio