From 1d49eb45ff703448fc652e267ccdcd68d2807c0f Mon Sep 17 00:00:00 2001 From: mathieuRA Date: Fri, 20 Oct 2023 17:08:42 +0200 Subject: [PATCH 1/4] feat(xo-web/licenses): display XOSTOR licenses --- packages/xo-web/src/common/intl/messages.js | 2 + packages/xo-web/src/common/select-license.js | 2 +- .../xo-web/src/xo-app/xoa/licenses/index.js | 37 +++-- .../xo-web/src/xo-app/xoa/licenses/xosan.js | 134 ------------------ .../xo-web/src/xo-app/xoa/licenses/xostor.js | 108 ++++++++++++++ 5 files changed, 134 insertions(+), 149 deletions(-) delete mode 100644 packages/xo-web/src/xo-app/xoa/licenses/xosan.js create mode 100644 packages/xo-web/src/xo-app/xoa/licenses/xostor.js diff --git a/packages/xo-web/src/common/intl/messages.js b/packages/xo-web/src/common/intl/messages.js index 082defbcdf0..09f4aa63be1 100644 --- a/packages/xo-web/src/common/intl/messages.js +++ b/packages/xo-web/src/common/intl/messages.js @@ -2500,11 +2500,13 @@ const messages = { storage: 'Storage', summary: 'Summary', wrongNumberOfHosts: 'Wrong number of hosts', + xostor: 'XOSTOR', xostorDiskRequired: 'At least one disk is required', xostorDisksDropdownLabel: '({nDisks, number} disk{nDisks, plural, one {} other {s}}) {hostname}', xostorFailedVgAlreadyExists: "Formatting disks failed because a VG group named 'linstor_group' already exists on the hosts. Do you want to delete these VG groups?", + xostorMultipleLicenses: 'This proxy has more than 1 license!', xostorPackagesWillBeInstalled: '"xcp-ng-release-linstor" and "xcp-ng-linstor" will be installed on each host', xostorReplicationWarning: 'If a disk dies, you will lose data', diff --git a/packages/xo-web/src/common/select-license.js b/packages/xo-web/src/common/select-license.js index ba8718787ce..f8d49ad1e17 100644 --- a/packages/xo-web/src/common/select-license.js +++ b/packages/xo-web/src/common/select-license.js @@ -9,7 +9,7 @@ import map from 'lodash/map.js' import { renderXoItemFromId } from './render-xo-item' const LicenseOptions = ({ license, formatDate }) => { - const productId = license.productId.split('-')[1] + const productId = license.productId.startsWith('xostor') ? license.productId : license.productId.split('-')[1] return (