From 40fdfcc8544c215f0b94efca4ec00434608a6334 Mon Sep 17 00:00:00 2001 From: Quentin Pavy Date: Tue, 31 Dec 2024 09:40:10 +0100 Subject: [PATCH 1/3] feat(dedicated.server): rbx1 eol banner ref: MANAGER-16530 Signed-off-by: Quentin Pavy --- .../server/dashboard/dashboard.constants.js | 3 +++ .../server/dashboard/dashboard.routing.js | 8 ++++++- .../servers/server/server.routing.js | 1 + .../modules/bm-server-components/src/index.js | 1 + .../src/rbx1-eol-banner/component.js | 8 +++++++ .../src/rbx1-eol-banner/constants.js | 24 +++++++++++++++++++ .../src/rbx1-eol-banner/controller.js | 9 +++++++ .../src/rbx1-eol-banner/index.js | 19 +++++++++++++++ .../src/rbx1-eol-banner/template.html | 6 +++++ .../translations/Messages_fr_FR.json | 3 +++ .../server-dashboard/dashboard.component.js | 1 + .../src/server-dashboard/dashboard.html | 4 ++++ .../src/server-dashboard/index.js | 8 ++++++- .../vmac-unavailable-banner.controller.js | 2 +- 14 files changed, 94 insertions(+), 3 deletions(-) create mode 100644 packages/manager/modules/bm-server-components/src/rbx1-eol-banner/component.js create mode 100644 packages/manager/modules/bm-server-components/src/rbx1-eol-banner/constants.js create mode 100644 packages/manager/modules/bm-server-components/src/rbx1-eol-banner/controller.js create mode 100644 packages/manager/modules/bm-server-components/src/rbx1-eol-banner/index.js create mode 100644 packages/manager/modules/bm-server-components/src/rbx1-eol-banner/template.html create mode 100644 packages/manager/modules/bm-server-components/src/rbx1-eol-banner/translations/Messages_fr_FR.json diff --git a/packages/manager/apps/dedicated/client/app/dedicated/dedicated-server/servers/server/dashboard/dashboard.constants.js b/packages/manager/apps/dedicated/client/app/dedicated/dedicated-server/servers/server/dashboard/dashboard.constants.js index 3dfcdd138fcc..0a89085c4444 100644 --- a/packages/manager/apps/dedicated/client/app/dedicated/dedicated-server/servers/server/dashboard/dashboard.constants.js +++ b/packages/manager/apps/dedicated/client/app/dedicated/dedicated-server/servers/server/dashboard/dashboard.constants.js @@ -26,9 +26,12 @@ export const UPGRADE_TYPE = { STORAGE: 'storage', }; +export const RBX1_DATACENTER = 'RBX_1'; + export default { ELIGIBLE_FOR_UPGRADE, COMMIT_IMPRESSION_TRACKING_DATA, RECOMMIT_IMPRESSION_TRACKING_DATA, UPGRADE_TYPE, + RBX1_DATACENTER, }; diff --git a/packages/manager/apps/dedicated/client/app/dedicated/dedicated-server/servers/server/dashboard/dashboard.routing.js b/packages/manager/apps/dedicated/client/app/dedicated/dedicated-server/servers/server/dashboard/dashboard.routing.js index 5c231674d063..e7567e9a4ac2 100644 --- a/packages/manager/apps/dedicated/client/app/dedicated/dedicated-server/servers/server/dashboard/dashboard.routing.js +++ b/packages/manager/apps/dedicated/client/app/dedicated/dedicated-server/servers/server/dashboard/dashboard.routing.js @@ -2,7 +2,7 @@ import includes from 'lodash/includes'; import isEmpty from 'lodash/isEmpty'; import UpgradeTask from './upgrade/upgrade-task.class'; -import { ELIGIBLE_FOR_UPGRADE } from './dashboard.constants'; +import { ELIGIBLE_FOR_UPGRADE, RBX1_DATACENTER } from './dashboard.constants'; import { UPGRADE_MODE } from './upgrade/upgrade.constants'; export default /* @ngInject */ ($stateProvider) => { @@ -334,6 +334,12 @@ export default /* @ngInject */ ($stateProvider) => { }) : null, ), + displayRbxEolBanner: /* @ngInject */ (features, server) => { + return ( + features.isFeatureAvailable('dedicated-server:rbx1-eol-banner') && + server.datacenter === RBX1_DATACENTER + ); + }, }, }); }; diff --git a/packages/manager/apps/dedicated/client/app/dedicated/dedicated-server/servers/server/server.routing.js b/packages/manager/apps/dedicated/client/app/dedicated/dedicated-server/servers/server/server.routing.js index acb2bae342c4..b261a366cc2a 100644 --- a/packages/manager/apps/dedicated/client/app/dedicated/dedicated-server/servers/server/server.routing.js +++ b/packages/manager/apps/dedicated/client/app/dedicated/dedicated-server/servers/server/server.routing.js @@ -28,6 +28,7 @@ export default /* @ngInject */ ($stateProvider) => { 'dedicated-server:dns', 'dedicated-server:upgradeWithTicket', 'dedicated-server:vmac-unavailable-banner', + 'dedicated-server:rbx1-eol-banner', ]), ola: /* @ngInject */ ( $stateParams, diff --git a/packages/manager/modules/bm-server-components/src/index.js b/packages/manager/modules/bm-server-components/src/index.js index 9fc8e1294820..f3483c5d8529 100644 --- a/packages/manager/modules/bm-server-components/src/index.js +++ b/packages/manager/modules/bm-server-components/src/index.js @@ -27,3 +27,4 @@ export { default as serverSecondaryDns } from './secondary-dns'; export { default as serverMainPage } from './server'; export { default as serverDashboard } from './server-dashboard'; export { default as vmacUnavailableBanner } from './vmac-unavailable-banner'; +export { default as rbx1EolBanner } from './rbx1-eol-banner'; diff --git a/packages/manager/modules/bm-server-components/src/rbx1-eol-banner/component.js b/packages/manager/modules/bm-server-components/src/rbx1-eol-banner/component.js new file mode 100644 index 000000000000..f3dc97ea080c --- /dev/null +++ b/packages/manager/modules/bm-server-components/src/rbx1-eol-banner/component.js @@ -0,0 +1,8 @@ +import controller from './controller'; +import template from './template.html'; + +export default { + controller, + name: 'ovhManagerBmServerComponentsRbx1EolBanner', + template, +}; diff --git a/packages/manager/modules/bm-server-components/src/rbx1-eol-banner/constants.js b/packages/manager/modules/bm-server-components/src/rbx1-eol-banner/constants.js new file mode 100644 index 000000000000..5d54b0ee342e --- /dev/null +++ b/packages/manager/modules/bm-server-components/src/rbx1-eol-banner/constants.js @@ -0,0 +1,24 @@ +export const GUIDE_LINKS = { + DEFAULT: 'https://www.ovhcloud.com/en-ie/lp/end-service-rbx-1/', + ASIA: 'https://www.ovhcloud.com/asia/lp/end-service-rbx-1/', + AU: 'https://www.ovhcloud.com/en-au/lp/end-service-rbx-1/', + CA: 'https://www.ovhcloud.com/en-ca/lp/end-service-rbx-1/', + DE: 'https://www.ovhcloud.com/de/lp/end-service-rbx-1/', + ES: 'https://www.ovhcloud.com/es-es/lp/end-service-rbx-1/', + FR: 'https://www.ovhcloud.com/fr/lp/end-service-rbx-1/', + GB: 'https://www.ovhcloud.com/en-gb/lp/end-service-rbx-1/', + IE: 'https://www.ovhcloud.com/en-ie/lp/end-service-rbx-1/', + IN: 'https://www.ovhcloud.com/en-in/lp/end-service-rbx-1/', + IT: 'https://www.ovhcloud.com/it/lp/end-service-rbx-1/', + MA: 'https://www.ovhcloud.com/fr-ma/lp/end-service-rbx-1/', + NL: 'https://www.ovhcloud.com/nl/lp/end-service-rbx-1/', + PL: 'https://www.ovhcloud.com/pl/lp/end-service-rbx-1/', + PT: 'https://www.ovhcloud.com/pt/lp/end-service-rbx-1/', + QC: 'https://www.ovhcloud.com/fr-ca/lp/end-service-rbx-1/', + SN: 'https://www.ovhcloud.com/fr-sn/lp/end-service-rbx-1/', + SG: 'https://www.ovhcloud.com/en-sg/lp/end-service-rbx-1/', + TN: 'https://www.ovhcloud.com/fr-tn/lp/end-service-rbx-1/', + US: 'https://www.ovhcloud.com/en/lp/end-service-rbx-1/', + WE: 'https://www.ovhcloud.com/en-ie/lp/end-service-rbx-1/', + WS: 'https://www.ovhcloud.com/es/lp/end-service-rbx-1/', +}; diff --git a/packages/manager/modules/bm-server-components/src/rbx1-eol-banner/controller.js b/packages/manager/modules/bm-server-components/src/rbx1-eol-banner/controller.js new file mode 100644 index 000000000000..ec87b7b1c6b5 --- /dev/null +++ b/packages/manager/modules/bm-server-components/src/rbx1-eol-banner/controller.js @@ -0,0 +1,9 @@ +import { GUIDE_LINKS } from './constants'; + +export default class RbxEolBannerController { + /* @ngInject */ + constructor(coreConfig) { + this.guideLink = + GUIDE_LINKS[coreConfig.getUser().ovhSubsidiary] || GUIDE_LINKS.DEFAULT; + } +} diff --git a/packages/manager/modules/bm-server-components/src/rbx1-eol-banner/index.js b/packages/manager/modules/bm-server-components/src/rbx1-eol-banner/index.js new file mode 100644 index 000000000000..7cd2321c9f83 --- /dev/null +++ b/packages/manager/modules/bm-server-components/src/rbx1-eol-banner/index.js @@ -0,0 +1,19 @@ +import angular from 'angular'; +import '@ovh-ux/ng-translate-async-loader'; +import 'angular-translate'; +import '@ovh-ux/ui-kit'; + +import component from './component'; + +const moduleName = 'ovhManagerRbx1EolBanner'; + +angular + .module(moduleName, [ + 'oui', + 'ngTranslateAsyncLoader', + 'pascalprecht.translate', + ]) + .component(component.name, component) + .run(/* @ngTranslationsInject:json ./translations */); + +export default moduleName; diff --git a/packages/manager/modules/bm-server-components/src/rbx1-eol-banner/template.html b/packages/manager/modules/bm-server-components/src/rbx1-eol-banner/template.html new file mode 100644 index 000000000000..d4491672b910 --- /dev/null +++ b/packages/manager/modules/bm-server-components/src/rbx1-eol-banner/template.html @@ -0,0 +1,6 @@ + +

+
diff --git a/packages/manager/modules/bm-server-components/src/rbx1-eol-banner/translations/Messages_fr_FR.json b/packages/manager/modules/bm-server-components/src/rbx1-eol-banner/translations/Messages_fr_FR.json new file mode 100644 index 000000000000..767176c6904d --- /dev/null +++ b/packages/manager/modules/bm-server-components/src/rbx1-eol-banner/translations/Messages_fr_FR.json @@ -0,0 +1,3 @@ +{ + "rbx1_eol_banner_title": "ATTENTION: Pour vous permettre de migrer vos services de RBX1 dont la modernisation est prévue cette année, la période de migration des serveurs est étendue jusqu'au 30 juin 2025. Pour plus de détail, merci de vous référer au mail reçu et de consulter notre guide de migration." +} diff --git a/packages/manager/modules/bm-server-components/src/server-dashboard/dashboard.component.js b/packages/manager/modules/bm-server-components/src/server-dashboard/dashboard.component.js index 995c3c77e7c5..83ee1d513d2f 100644 --- a/packages/manager/modules/bm-server-components/src/server-dashboard/dashboard.component.js +++ b/packages/manager/modules/bm-server-components/src/server-dashboard/dashboard.component.js @@ -51,6 +51,7 @@ export default { goToTrafficOrder: '<', goToTrafficCancel: '<', serverType: ' + + Date: Mon, 13 Jan 2025 09:33:47 +0000 Subject: [PATCH 2/3] fix(i18n): add missing translations [CDS 3616] Signed-off-by: CDS Translator Agent --- .../src/rbx1-eol-banner/translations/Messages_de_DE.json | 3 +++ .../src/rbx1-eol-banner/translations/Messages_en_GB.json | 3 +++ .../src/rbx1-eol-banner/translations/Messages_es_ES.json | 3 +++ .../src/rbx1-eol-banner/translations/Messages_fr_CA.json | 3 +++ .../src/rbx1-eol-banner/translations/Messages_it_IT.json | 3 +++ .../src/rbx1-eol-banner/translations/Messages_pl_PL.json | 3 +++ .../src/rbx1-eol-banner/translations/Messages_pt_PT.json | 3 +++ 7 files changed, 21 insertions(+) create mode 100644 packages/manager/modules/bm-server-components/src/rbx1-eol-banner/translations/Messages_de_DE.json create mode 100644 packages/manager/modules/bm-server-components/src/rbx1-eol-banner/translations/Messages_en_GB.json create mode 100644 packages/manager/modules/bm-server-components/src/rbx1-eol-banner/translations/Messages_es_ES.json create mode 100644 packages/manager/modules/bm-server-components/src/rbx1-eol-banner/translations/Messages_fr_CA.json create mode 100644 packages/manager/modules/bm-server-components/src/rbx1-eol-banner/translations/Messages_it_IT.json create mode 100644 packages/manager/modules/bm-server-components/src/rbx1-eol-banner/translations/Messages_pl_PL.json create mode 100644 packages/manager/modules/bm-server-components/src/rbx1-eol-banner/translations/Messages_pt_PT.json diff --git a/packages/manager/modules/bm-server-components/src/rbx1-eol-banner/translations/Messages_de_DE.json b/packages/manager/modules/bm-server-components/src/rbx1-eol-banner/translations/Messages_de_DE.json new file mode 100644 index 000000000000..e0dc3ffba70a --- /dev/null +++ b/packages/manager/modules/bm-server-components/src/rbx1-eol-banner/translations/Messages_de_DE.json @@ -0,0 +1,3 @@ +{ + "rbx1_eol_banner_title": "BITTE BEACHTEN SIE: Um Ihnen die Migration Ihrer Dienste von RBX1 zu ermöglichen, das in diesem Jahr modernisiert werden soll, wird der Zeitraum für die Migration der Server bis zum 30. Juni 2025 verlängert. Weitere Informationen finden Sie in der E-Mail, die Sie erhalten haben, sowie in unserer Migrationsanleitung." +} diff --git a/packages/manager/modules/bm-server-components/src/rbx1-eol-banner/translations/Messages_en_GB.json b/packages/manager/modules/bm-server-components/src/rbx1-eol-banner/translations/Messages_en_GB.json new file mode 100644 index 000000000000..26c0a75d4283 --- /dev/null +++ b/packages/manager/modules/bm-server-components/src/rbx1-eol-banner/translations/Messages_en_GB.json @@ -0,0 +1,3 @@ +{ + "rbx1_eol_banner_title": "IMPORTANT! To enable you to migrate your RBX1 services, which are scheduled to be modernized this year, the server migration period is extended until June 30, 2025. For further details, please refer to the email you have received and refer to our migration guide." +} diff --git a/packages/manager/modules/bm-server-components/src/rbx1-eol-banner/translations/Messages_es_ES.json b/packages/manager/modules/bm-server-components/src/rbx1-eol-banner/translations/Messages_es_ES.json new file mode 100644 index 000000000000..29454fef25f7 --- /dev/null +++ b/packages/manager/modules/bm-server-components/src/rbx1-eol-banner/translations/Messages_es_ES.json @@ -0,0 +1,3 @@ +{ + "rbx1_eol_banner_title": "ATENCIÓN: Para asegurarnos de que puede migrar correctamente los servicios de RBX1, cuya modernización está prevista para este año, el período de migración de servidores se amplía hasta el 30 de junio de 2025. Para más información, consulte el correo electrónico recibido y nuestra guía de migración." +} diff --git a/packages/manager/modules/bm-server-components/src/rbx1-eol-banner/translations/Messages_fr_CA.json b/packages/manager/modules/bm-server-components/src/rbx1-eol-banner/translations/Messages_fr_CA.json new file mode 100644 index 000000000000..767176c6904d --- /dev/null +++ b/packages/manager/modules/bm-server-components/src/rbx1-eol-banner/translations/Messages_fr_CA.json @@ -0,0 +1,3 @@ +{ + "rbx1_eol_banner_title": "ATTENTION: Pour vous permettre de migrer vos services de RBX1 dont la modernisation est prévue cette année, la période de migration des serveurs est étendue jusqu'au 30 juin 2025. Pour plus de détail, merci de vous référer au mail reçu et de consulter notre guide de migration." +} diff --git a/packages/manager/modules/bm-server-components/src/rbx1-eol-banner/translations/Messages_it_IT.json b/packages/manager/modules/bm-server-components/src/rbx1-eol-banner/translations/Messages_it_IT.json new file mode 100644 index 000000000000..e1281d0374b3 --- /dev/null +++ b/packages/manager/modules/bm-server-components/src/rbx1-eol-banner/translations/Messages_it_IT.json @@ -0,0 +1,3 @@ +{ + "rbx1_eol_banner_title": "ATTENZIONE: Per consentirti di trasferire i tuoi servizi da RBX1, la cui modernizzazione è prevista quest'anno, il periodo di migrazione dei server sarà esteso fino al 30 giugno 2025. Per maggiori dettagli, consulta l'email ricevuta e la nostra guida alla migrazione." +} diff --git a/packages/manager/modules/bm-server-components/src/rbx1-eol-banner/translations/Messages_pl_PL.json b/packages/manager/modules/bm-server-components/src/rbx1-eol-banner/translations/Messages_pl_PL.json new file mode 100644 index 000000000000..c0f898e9b265 --- /dev/null +++ b/packages/manager/modules/bm-server-components/src/rbx1-eol-banner/translations/Messages_pl_PL.json @@ -0,0 +1,3 @@ +{ + "rbx1_eol_banner_title": "UWAGA! Aby umożliwić migrację usług RBX1, które mają zostać zmodernizowane w tym roku, okres migracji serwerów został przedłużony do 30 czerwca 2025 r. Więcej informacji znajdziesz w e-mailu, który do Ciebie wysłaliśmy oraz w przewodniku dotyczącym migracji." +} diff --git a/packages/manager/modules/bm-server-components/src/rbx1-eol-banner/translations/Messages_pt_PT.json b/packages/manager/modules/bm-server-components/src/rbx1-eol-banner/translations/Messages_pt_PT.json new file mode 100644 index 000000000000..fa655befb68a --- /dev/null +++ b/packages/manager/modules/bm-server-components/src/rbx1-eol-banner/translations/Messages_pt_PT.json @@ -0,0 +1,3 @@ +{ + "rbx1_eol_banner_title": "ATENÇÃO: Para lhe permitir migrar os seus serviços de RBX1 cuja modernização está prevista para este ano, o período de migração dos servidores foi alargado até 30 de junho de 2025. Para mais informações, consulte o e-mail recebido e o nosso guia de migração." +} From ed4109eedd1393d88d6c2b023f674ec5202fb245 Mon Sep 17 00:00:00 2001 From: Quentin Pavy Date: Tue, 14 Jan 2025 08:51:17 +0100 Subject: [PATCH 3/3] feat(dedicated.server): display rb1x banner for rbx1 not in ct rack ref: MANAGER-16530 Signed-off-by: Quentin Pavy --- .../servers/server/dashboard/dashboard.constants.js | 2 ++ .../servers/server/dashboard/dashboard.routing.js | 9 +++++++-- 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/packages/manager/apps/dedicated/client/app/dedicated/dedicated-server/servers/server/dashboard/dashboard.constants.js b/packages/manager/apps/dedicated/client/app/dedicated/dedicated-server/servers/server/dashboard/dashboard.constants.js index 0a89085c4444..26a0bfcbdebf 100644 --- a/packages/manager/apps/dedicated/client/app/dedicated/dedicated-server/servers/server/dashboard/dashboard.constants.js +++ b/packages/manager/apps/dedicated/client/app/dedicated/dedicated-server/servers/server/dashboard/dashboard.constants.js @@ -27,6 +27,7 @@ export const UPGRADE_TYPE = { }; export const RBX1_DATACENTER = 'RBX_1'; +export const RBX1_CONTAINER_START_WITH = 'CT'; export default { ELIGIBLE_FOR_UPGRADE, @@ -34,4 +35,5 @@ export default { RECOMMIT_IMPRESSION_TRACKING_DATA, UPGRADE_TYPE, RBX1_DATACENTER, + RBX1_CONTAINER_START_WITH, }; diff --git a/packages/manager/apps/dedicated/client/app/dedicated/dedicated-server/servers/server/dashboard/dashboard.routing.js b/packages/manager/apps/dedicated/client/app/dedicated/dedicated-server/servers/server/dashboard/dashboard.routing.js index e7567e9a4ac2..427771c7d402 100644 --- a/packages/manager/apps/dedicated/client/app/dedicated/dedicated-server/servers/server/dashboard/dashboard.routing.js +++ b/packages/manager/apps/dedicated/client/app/dedicated/dedicated-server/servers/server/dashboard/dashboard.routing.js @@ -2,7 +2,11 @@ import includes from 'lodash/includes'; import isEmpty from 'lodash/isEmpty'; import UpgradeTask from './upgrade/upgrade-task.class'; -import { ELIGIBLE_FOR_UPGRADE, RBX1_DATACENTER } from './dashboard.constants'; +import { + ELIGIBLE_FOR_UPGRADE, + RBX1_CONTAINER_START_WITH, + RBX1_DATACENTER, +} from './dashboard.constants'; import { UPGRADE_MODE } from './upgrade/upgrade.constants'; export default /* @ngInject */ ($stateProvider) => { @@ -337,7 +341,8 @@ export default /* @ngInject */ ($stateProvider) => { displayRbxEolBanner: /* @ngInject */ (features, server) => { return ( features.isFeatureAvailable('dedicated-server:rbx1-eol-banner') && - server.datacenter === RBX1_DATACENTER + server.datacenter === RBX1_DATACENTER && + !server.rack.toUpperCase().startsWith(RBX1_CONTAINER_START_WITH) ); }, },