This is an automated email from the ASF dual-hosted git repository.

pearl11594 pushed a commit to branch fr06-cks-template-register
in repository https://gitbox.apache.org/repos/asf/cloudstack.git

commit b85b78d17eca1b26af52e3a13b0b38117f2deaf1
Author: nvazquez <[email protected]>
AuthorDate: Mon Feb 5 14:53:09 2024 -0300

    UI: Display cluster offerings and etcd nodes
---
 ui/public/locales/en.json           |  4 ++++
 ui/src/components/view/InfoCard.vue | 33 +++++++++++++++++++++++++++++++++
 2 files changed, 37 insertions(+)

diff --git a/ui/public/locales/en.json b/ui/public/locales/en.json
index 2498d5688dc..81f22e7360b 100644
--- a/ui/public/locales/en.json
+++ b/ui/public/locales/en.json
@@ -1887,6 +1887,9 @@
 "label.service.lb.netscaler.servicepackages": "Netscaler service packages",
 "label.service.lb.netscaler.servicepackages.description": "Service package 
description",
 "label.service.offering": "Service offering",
+"label.service.offering.controlnodes": "Compute offering for Control Nodes",
+"label.service.offering.etcdnodes": "Compute offering for etcd Nodes",
+"label.service.offering.workernodes": "Compute offering for Worker Nodes",
 "label.service.staticnat.associatepublicip": "Associate public IP",
 "label.service.staticnat.elasticipcheckbox": "Elastic IP",
 "label.servicegroupuuid": "Service Group",
@@ -2402,6 +2405,7 @@
 "label.bucket.delete": "Delete Bucket",
 "label.quotagb": "Quota in GB",
 "label.encryption": "Encryption",
+"label.etcdnodes": "Number of etcd nodes",
 "label.versioning": "Versioning",
 "label.objectlocking": "Object Lock",
 "label.bucket.policy": "Bucket Policy",
diff --git a/ui/src/components/view/InfoCard.vue 
b/ui/src/components/view/InfoCard.vue
index 69c40233d08..38db32c6244 100644
--- a/ui/src/components/view/InfoCard.vue
+++ b/ui/src/components/view/InfoCard.vue
@@ -534,6 +534,39 @@
             <span v-else>{{ resource.serviceofferingname || 
resource.serviceofferingid }}</span>
           </div>
         </div>
+        <div class="resource-detail-item" v-if="resource.controlofferingname 
&& resource.controlofferingid">
+          <div class="resource-detail-item__label">{{ 
$t('label.service.offering.controlnodes') }}</div>
+          <div class="resource-detail-item__details">
+            <cloud-outlined />
+            <router-link v-if="!isStatic && ($route.meta.name === 'router' || 
$route.meta.name === 'systemvm')" :to="{ path: '/systemoffering/' + 
resource.controlofferingid}">{{ resource.controlofferingname || 
resource.controlofferingid }} </router-link>
+            <router-link v-else-if="$router.resolve('/computeoffering/' + 
resource.controlofferingid).matched[0].redirect !== '/exception/404'" :to="{ 
path: '/computeoffering/' + resource.controlofferingid }">{{ 
resource.controlofferingname || resource.controlofferingid }} </router-link>
+            <span v-else>{{ resource.controlofferingname || 
resource.controlofferingid }}</span>
+          </div>
+        </div>
+        <div class="resource-detail-item" v-if="resource.workerofferingname && 
resource.workerofferingid">
+          <div class="resource-detail-item__label">{{ 
$t('label.service.offering.workernodes') }}</div>
+          <div class="resource-detail-item__details">
+            <cloud-outlined />
+            <router-link v-if="!isStatic && ($route.meta.name === 'router' || 
$route.meta.name === 'systemvm')" :to="{ path: '/systemoffering/' + 
resource.workerofferingid}">{{ resource.workerofferingname || 
resource.workerofferingid }} </router-link>
+            <router-link v-else-if="$router.resolve('/computeoffering/' + 
resource.workerofferingid).matched[0].redirect !== '/exception/404'" :to="{ 
path: '/computeoffering/' + resource.workerofferingid }">{{ 
resource.workerofferingname || resource.workerofferingid }} </router-link>
+            <span v-else>{{ resource.workerofferingname || 
resource.workerofferingid }}</span>
+          </div>
+        </div>
+        <div class="resource-detail-item" v-if="resource.etcdofferingname && 
resource.etcdofferingid">
+          <div class="resource-detail-item__label">{{ 
$t('label.service.offering.etcdnodes') }}</div>
+          <div class="resource-detail-item__details">
+            <cloud-outlined />
+            <router-link v-if="!isStatic && ($route.meta.name === 'router' || 
$route.meta.name === 'systemvm')" :to="{ path: '/systemoffering/' + 
resource.etcdofferingid}">{{ resource.etcdofferingname || 
resource.etcdofferingid }} </router-link>
+            <router-link v-else-if="$router.resolve('/computeoffering/' + 
resource.etcdfferingid).matched[0].redirect !== '/exception/404'" :to="{ path: 
'/computeoffering/' + resource.etcdofferingid }">{{ resource.etcdofferingname 
|| resource.etcdofferingid }} </router-link>
+            <span v-else>{{ resource.etcdofferingname || 
resource.etcdofferingid }}</span>
+          </div>
+        </div>
+        <div class="resource-detail-item" v-if="resource.etcdnodes">
+          <div class="resource-detail-item__label">{{ $t('label.etcdnodes') 
}}</div>
+          <div class="resource-detail-item__details">
+            <bulb-outlined />{{ resource.etcdnodes }}
+          </div>
+        </div>
         <div class="resource-detail-item" v-if="resource.diskofferingname && 
resource.diskofferingid">
           <div class="resource-detail-item__label">{{ $t('label.diskoffering') 
}}</div>
           <div class="resource-detail-item__details">

Reply via email to