Bläddra i källkod

Add Oracle Compute Cloud@Customer Logos and Configuration

This commit adds the logos and configuration for the new Oracle Compute
Cloud@Customer. These updates will allow users to easily identify and
access the new provider.
Daniel Vincze 2 år sedan
förälder
incheckning
e29f397e31

+ 9 - 1
config.ts

@@ -94,6 +94,12 @@ const conf: Config = {
       requiredFields: ["compartment", "availability_domain", "vcn_compartment"],
       relistFields: ["migr_image_map", "migr_image"],
     },
+    {
+      name: "o3c",
+      types: ["destination"],
+      requiredFields: ["compartment", "availability_domain", "vcn_compartment"],
+      relistFields: ["migr_image_map", "migr_image"],
+    },
     {
       name: "vmware_vsphere",
       types: ["destination"],
@@ -121,6 +127,7 @@ const conf: Config = {
     oracle_vm: 3,
     olvm: 3,
     opca: 3,
+    o3c: 3,
     rhev: 3,
     metal: 4,
     lxd: 4,
@@ -135,7 +142,8 @@ const conf: Config = {
     kubevirt: "KubeVirt",
     scvmm: "SCVMM",
     oci: "OCI",
-    opca: "Oracle PCA X9-2",
+    opca: "Oracle Private Cloud Appliance",
+    o3c: "Oracle Cloud Compute@Customer",
     opc: "Oracle Cloud",
     oracle_vm: "Oracle VM",
     olvm: "OLVM",

Filskillnaden har hållts tillbaka eftersom den är för stor
+ 41 - 0
server/api/resources/providerLogos/o3c-128-disabled.svg


Filskillnaden har hållts tillbaka eftersom den är för stor
+ 40 - 0
server/api/resources/providerLogos/o3c-128.svg


Filskillnaden har hållts tillbaka eftersom den är för stor
+ 50 - 0
server/api/resources/providerLogos/o3c-32-white.svg


Filskillnaden har hållts tillbaka eftersom den är för stor
+ 47 - 0
server/api/resources/providerLogos/o3c-32.svg


Filskillnaden har hållts tillbaka eftersom den är för stor
+ 47 - 0
server/api/resources/providerLogos/o3c-42.svg


Filskillnaden har hållts tillbaka eftersom den är för stor
+ 46 - 0
server/api/resources/providerLogos/o3c-64.svg


Filskillnaden har hållts tillbaka eftersom den är för stor
+ 0 - 3
server/api/resources/providerLogos/oci-32-white.svg


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

@@ -17,6 +17,7 @@ export type ProviderTypes =
   | "openstack"
   | "opc"
   | "opca"
+  | "o3c"
   | "oracle_vm"
   | "vmware_vsphere"
   | "aws"

+ 2 - 0
src/plugins/index.ts

@@ -18,6 +18,7 @@ import AzureConnectionSchemaPlugin from "./azure/ConnectionSchemaPlugin";
 import OpenstackConnectionSchemaPlugin from "./openstack/ConnectionSchemaPlugin";
 import OciConnectionSchemaPlugin from "./oci/ConnectionSchemaPlugin";
 import OpcaConnectionSchemaPlugin from "./opca/ConnectionSchemaPlugin";
+import O3cConnectionSchemaPlugin from "./o3c/ConnectionSchemaPlugin";
 import KubevirtConnectionSchemaPlugin from "./kubevirt/ConnectionSchemaPlugin";
 
 import DefaultContentPlugin from "./default/ContentPlugin";
@@ -51,6 +52,7 @@ export const ConnectionSchemaPlugin = {
       openstack: new OpenstackConnectionSchemaPlugin(),
       oci: new OciConnectionSchemaPlugin(),
       opca: new OpcaConnectionSchemaPlugin(),
+      o3c: new O3cConnectionSchemaPlugin(),
       kubevirt: new KubevirtConnectionSchemaPlugin(),
     };
     if (hasKey(map, provider)) {

+ 32 - 0
src/plugins/o3c/ConnectionSchemaPlugin.ts

@@ -0,0 +1,32 @@
+/*
+Copyright (C) 2024  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 type { Schema } from "@src/@types/Schema";
+import type { Field } from "@src/@types/Field";
+
+import ConnectionSchemaParserBase from "@src/plugins/default/ConnectionSchemaPlugin";
+
+const TEXT_AREA_FIELDS = ["private_key_data", "custom_certificate_bundle"];
+
+export default class ConnectionSchemaParser extends ConnectionSchemaParserBase {
+  override parseSchemaToFields(schema: Schema): Field[] {
+    const fields = super.parseSchemaToFields(schema);
+    fields.forEach(field => {
+      if (TEXT_AREA_FIELDS.includes(field.name)) {
+        field.useTextArea = true;
+      }
+    });
+    return fields;
+  }
+}

+ 3 - 0
tests/mocks/ProvidersMock.ts

@@ -17,6 +17,9 @@ export const PROVIDERS_MOCK: Providers = {
   opca: {
     types: [],
   },
+  o3c: {
+    types: [],
+  },
   oracle_vm: {
     types: [],
   },

Vissa filer visades inte eftersom för många filer har ändrats