diff --git a/config.ts b/config.ts index f0e24735..dac06027 100644 --- a/config.ts +++ b/config.ts @@ -170,6 +170,7 @@ const conf: Config = { metal: 4, lxd: 4, libvirt: 4, + nutanix: 4, }, providerNames: { @@ -193,6 +194,7 @@ const conf: Config = { lxd: "LXD", proxmox: "Proxmox VE", libvirt: "Libvirt", + nutanix: "Nutanix", }, // The list of providers for which to disable setting the 'Execute Now Options' field diff --git a/server/api/resources/providerLogos/nutanix-128-disabled.svg b/server/api/resources/providerLogos/nutanix-128-disabled.svg new file mode 100644 index 00000000..d14c5075 --- /dev/null +++ b/server/api/resources/providerLogos/nutanix-128-disabled.svg @@ -0,0 +1,53 @@ + + + + + + + + + diff --git a/server/api/resources/providerLogos/nutanix-128.svg b/server/api/resources/providerLogos/nutanix-128.svg new file mode 100644 index 00000000..9ae4f131 --- /dev/null +++ b/server/api/resources/providerLogos/nutanix-128.svg @@ -0,0 +1,48 @@ + + + + + + + + diff --git a/server/api/resources/providerLogos/nutanix-32-white.svg b/server/api/resources/providerLogos/nutanix-32-white.svg new file mode 100644 index 00000000..78345829 --- /dev/null +++ b/server/api/resources/providerLogos/nutanix-32-white.svg @@ -0,0 +1,47 @@ + + + + + + + + diff --git a/server/api/resources/providerLogos/nutanix-32.svg b/server/api/resources/providerLogos/nutanix-32.svg new file mode 100644 index 00000000..a737a821 --- /dev/null +++ b/server/api/resources/providerLogos/nutanix-32.svg @@ -0,0 +1,47 @@ + + + + + + + + diff --git a/server/api/resources/providerLogos/nutanix-42.svg b/server/api/resources/providerLogos/nutanix-42.svg new file mode 100644 index 00000000..79b33cbd --- /dev/null +++ b/server/api/resources/providerLogos/nutanix-42.svg @@ -0,0 +1,48 @@ + + + + + + + + diff --git a/server/api/resources/providerLogos/nutanix-64.svg b/server/api/resources/providerLogos/nutanix-64.svg new file mode 100644 index 00000000..6f1192a6 --- /dev/null +++ b/server/api/resources/providerLogos/nutanix-64.svg @@ -0,0 +1,47 @@ + + + + + + + + diff --git a/src/@types/Providers.ts b/src/@types/Providers.ts index 773c0c34..12ba1393 100644 --- a/src/@types/Providers.ts +++ b/src/@types/Providers.ts @@ -32,7 +32,8 @@ export type ProviderTypes = | "metal" | "rhev" | "lxd" - | "libvirt"; + | "libvirt" + | "nutanix"; export type Providers = { [provider in ProviderTypes]: { diff --git a/src/plugins/index.ts b/src/plugins/index.ts index 162dd557..cc2f9f04 100644 --- a/src/plugins/index.ts +++ b/src/plugins/index.ts @@ -23,6 +23,7 @@ import O3cConnectionSchemaPlugin from "./o3c/ConnectionSchemaPlugin"; import KubevirtConnectionSchemaPlugin from "./kubevirt/ConnectionSchemaPlugin"; import HarvesterConnectionSchemaPlugin from "./harvester/ConnectionSchemaPlugin"; import LibvirtConnectionSchemaPlugin from "./libvirt/ConnectionSchemaPlugin"; +import NutanixConnectionSchemaPlugin from "./nutanix/ConnectionSchemaPlugin"; import DefaultContentPlugin from "./default/ContentPlugin"; import AzureContentPlugin from "./azure/ContentPlugin"; @@ -63,6 +64,7 @@ export const ConnectionSchemaPlugin = { kubevirt: new KubevirtConnectionSchemaPlugin(), harvester: new HarvesterConnectionSchemaPlugin(), libvirt: new LibvirtConnectionSchemaPlugin(), + nutanix: new NutanixConnectionSchemaPlugin(), }; if (hasKey(map, provider)) { return map[provider]; diff --git a/src/plugins/nutanix/ConnectionSchemaPlugin.ts b/src/plugins/nutanix/ConnectionSchemaPlugin.ts new file mode 100644 index 00000000..7be39a1c --- /dev/null +++ b/src/plugins/nutanix/ConnectionSchemaPlugin.ts @@ -0,0 +1,17 @@ +/* +Copyright (C) 2026 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 . +*/ + +import ConnectionSchemaParserBase from "@src/plugins/default/ConnectionSchemaPlugin"; + +export default class NutanixConnectionSchemaPlugin extends ConnectionSchemaParserBase {} diff --git a/tests/mocks/ProvidersMock.ts b/tests/mocks/ProvidersMock.ts index 0ac952b5..fefa179b 100644 --- a/tests/mocks/ProvidersMock.ts +++ b/tests/mocks/ProvidersMock.ts @@ -59,6 +59,9 @@ export const PROVIDERS_MOCK: Providers = { libvirt: { types: [], }, + nutanix: { + types: [], + }, vhi: { types: [], },