From 91625e9c7515dbef87e03d3dfa0edd199c3dff0d Mon Sep 17 00:00:00 2001 From: "Kurzacz, Kamil" Date: Fri, 26 Nov 2021 17:55:58 +0100 Subject: [PATCH 1/4] Enable Kafka main dashboard --- config/product/kafka.js | 10 +++++----- models/kafka.strimzi.io.kafka.js | 13 +++++++++++++ pages/c/_cluster/kafka/index.vue | 2 +- 3 files changed, 19 insertions(+), 6 deletions(-) create mode 100644 models/kafka.strimzi.io.kafka.js diff --git a/config/product/kafka.js b/config/product/kafka.js index ba6fe617b86..b51c9a538a5 100644 --- a/config/product/kafka.js +++ b/config/product/kafka.js @@ -12,18 +12,18 @@ export function init(store) { } = DSL(store, NAME); product({ - //TODO (Creatone): Add condition for Kafka. - //ifHave: IF_HAVE.V2_MONITORING, // possible RBAC issue here if mon turned on but user doesn't have view/read roles on pod monitors + // TODO (Creatone): Add condition for Kafka. + // ifHave: IF_HAVE.V2_MONITORING, // possible RBAC issue here if mon turned on but user doesn't have view/read roles on pod monitors icon: 'kafka', - weight: 90, + weight: 89, }); virtualType({ label: 'Kafka', namespaced: false, - name: 'monitoring-overview', + name: 'kafka', weight: 105, - route: { name: 'c-cluster-monitoring' }, + route: { name: 'c-cluster-kafka' }, exact: true, overview: true, }); diff --git a/models/kafka.strimzi.io.kafka.js b/models/kafka.strimzi.io.kafka.js new file mode 100644 index 00000000000..188b2977538 --- /dev/null +++ b/models/kafka.strimzi.io.kafka.js @@ -0,0 +1,13 @@ +import SteveModel from '@/plugins/steve/steve-class'; + +export const PROVIDERS = [ + { + + name: 'kafka', + labelKey: 'kafkas.kafka.strimzi.io.kafka', + default: { }, + }, +]; + +export default class Kafka extends SteveModel { +} diff --git a/pages/c/_cluster/kafka/index.vue b/pages/c/_cluster/kafka/index.vue index e407a230837..1add3c71965 100644 --- a/pages/c/_cluster/kafka/index.vue +++ b/pages/c/_cluster/kafka/index.vue @@ -143,7 +143,7 @@ export default {

- + Kafka dashboard

From 1739818dbfaa41851935bcedc246d0939d72b7ee Mon Sep 17 00:00:00 2001 From: "Kurzacz, Kamil" Date: Sat, 27 Nov 2021 17:29:29 +0100 Subject: [PATCH 2/4] Enable Kafka creation tab --- models/kafka.strimzi.io.create.js | 23 ++++++++ pages/c/_cluster/kafka/create/_id.vue | 19 ++++++ pages/c/_cluster/kafka/create/create.vue | 19 ++++++ pages/c/_cluster/kafka/create/index.vue | 74 ++++++++++++++++++++++-- 4 files changed, 129 insertions(+), 6 deletions(-) create mode 100644 models/kafka.strimzi.io.create.js create mode 100644 pages/c/_cluster/kafka/create/_id.vue create mode 100644 pages/c/_cluster/kafka/create/create.vue diff --git a/models/kafka.strimzi.io.create.js b/models/kafka.strimzi.io.create.js new file mode 100644 index 00000000000..8948220a87c --- /dev/null +++ b/models/kafka.strimzi.io.create.js @@ -0,0 +1,23 @@ +import SteveModel from '@/plugins/steve/steve-class'; + +export default class KafkaCreate extends SteveModel { + get _detailLocation() { + const id = this.id?.replace(/.*\//, ''); + + return { + name: 'c-cluster-kafka-create-namespace-id', + params: { + cluster: this.$rootGetters['clusterId'], id, namespace: this.metadata.namespace + }, + query: { resource: this.type } + }; + } + + get doneOverride() { + return { + name: 'c-cluster-kafka-create', + params: { cluster: this.$rootGetters['clusterId'] }, + query: { resource: this.type } + }; + } +} diff --git a/pages/c/_cluster/kafka/create/_id.vue b/pages/c/_cluster/kafka/create/_id.vue new file mode 100644 index 00000000000..32ba2464c1b --- /dev/null +++ b/pages/c/_cluster/kafka/create/_id.vue @@ -0,0 +1,19 @@ + + + diff --git a/pages/c/_cluster/kafka/create/create.vue b/pages/c/_cluster/kafka/create/create.vue new file mode 100644 index 00000000000..32ba2464c1b --- /dev/null +++ b/pages/c/_cluster/kafka/create/create.vue @@ -0,0 +1,19 @@ + + + diff --git a/pages/c/_cluster/kafka/create/index.vue b/pages/c/_cluster/kafka/create/index.vue index 204884d26b8..be22b62cdaa 100644 --- a/pages/c/_cluster/kafka/create/index.vue +++ b/pages/c/_cluster/kafka/create/index.vue @@ -1,19 +1,81 @@ + + From c1f0a08e290c2ddce63744451bab706f54a91e6c Mon Sep 17 00:00:00 2001 From: "Kurzacz, Kamil" Date: Sat, 27 Nov 2021 17:54:11 +0100 Subject: [PATCH 3/4] Refactor Kafka tab Create -> Service --- config/product/kafka.js | 10 +++++----- ...trimzi.io.create.js => kafka.strimzi.io.service.js} | 6 +++--- pages/c/_cluster/kafka/{create => service}/_id.vue | 2 +- pages/c/_cluster/kafka/{create => service}/create.vue | 2 +- pages/c/_cluster/kafka/{create => service}/index.vue | 2 +- 5 files changed, 11 insertions(+), 11 deletions(-) rename models/{kafka.strimzi.io.create.js => kafka.strimzi.io.service.js} (74%) rename pages/c/_cluster/kafka/{create => service}/_id.vue (92%) rename pages/c/_cluster/kafka/{create => service}/create.vue (92%) rename pages/c/_cluster/kafka/{create => service}/index.vue (98%) diff --git a/config/product/kafka.js b/config/product/kafka.js index b51c9a538a5..f9ec11b455c 100644 --- a/config/product/kafka.js +++ b/config/product/kafka.js @@ -29,17 +29,17 @@ export function init(store) { }); virtualType({ - label: 'Create', + label: 'Service', group: 'kafka', - name: 'create', + name: 'service', icon: 'globe', - route: { name: 'c-cluster-kafka-create' } + route: { name: 'c-cluster-kafka-service' } }); - configureType('create', { showListMasthead: false }); + configureType('service', { showListMasthead: false }); basicType([ 'kafka', - 'create', + 'service', ]); } diff --git a/models/kafka.strimzi.io.create.js b/models/kafka.strimzi.io.service.js similarity index 74% rename from models/kafka.strimzi.io.create.js rename to models/kafka.strimzi.io.service.js index 8948220a87c..4e3c591fe04 100644 --- a/models/kafka.strimzi.io.create.js +++ b/models/kafka.strimzi.io.service.js @@ -1,11 +1,11 @@ import SteveModel from '@/plugins/steve/steve-class'; -export default class KafkaCreate extends SteveModel { +export default class KafkaService extends SteveModel { get _detailLocation() { const id = this.id?.replace(/.*\//, ''); return { - name: 'c-cluster-kafka-create-namespace-id', + name: 'c-cluster-kafka-service-namespace-id', params: { cluster: this.$rootGetters['clusterId'], id, namespace: this.metadata.namespace }, @@ -15,7 +15,7 @@ export default class KafkaCreate extends SteveModel { get doneOverride() { return { - name: 'c-cluster-kafka-create', + name: 'c-cluster-kafka-service', params: { cluster: this.$rootGetters['clusterId'] }, query: { resource: this.type } }; diff --git a/pages/c/_cluster/kafka/create/_id.vue b/pages/c/_cluster/kafka/service/_id.vue similarity index 92% rename from pages/c/_cluster/kafka/create/_id.vue rename to pages/c/_cluster/kafka/service/_id.vue index 32ba2464c1b..085105e9a0d 100644 --- a/pages/c/_cluster/kafka/create/_id.vue +++ b/pages/c/_cluster/kafka/service/_id.vue @@ -2,7 +2,7 @@ import ResourceDetail from '@/components/ResourceDetail'; export default { - name: 'KafkaCreate', + name: 'KafkaService', components: { ResourceDetail }, diff --git a/pages/c/_cluster/kafka/create/create.vue b/pages/c/_cluster/kafka/service/create.vue similarity index 92% rename from pages/c/_cluster/kafka/create/create.vue rename to pages/c/_cluster/kafka/service/create.vue index 32ba2464c1b..085105e9a0d 100644 --- a/pages/c/_cluster/kafka/create/create.vue +++ b/pages/c/_cluster/kafka/service/create.vue @@ -2,7 +2,7 @@ import ResourceDetail from '@/components/ResourceDetail'; export default { - name: 'KafkaCreate', + name: 'KafkaService', components: { ResourceDetail }, diff --git a/pages/c/_cluster/kafka/create/index.vue b/pages/c/_cluster/kafka/service/index.vue similarity index 98% rename from pages/c/_cluster/kafka/create/index.vue rename to pages/c/_cluster/kafka/service/index.vue index be22b62cdaa..1ae984d2285 100644 --- a/pages/c/_cluster/kafka/create/index.vue +++ b/pages/c/_cluster/kafka/service/index.vue @@ -38,7 +38,7 @@ export default { const activeResource = this.$refs?.tabs?.activeTabName || this.routeSchema.id; return { - name: 'c-cluster-kafka-create', + name: 'c-cluster-kafka-service', params: { cluster: this.$route.params.cluster }, query: { resource: activeResource } }; From c85b8213064b5d7a3cd80902af49d7d3869c97e9 Mon Sep 17 00:00:00 2001 From: "Kurzacz, Kamil" Date: Sat, 27 Nov 2021 18:19:23 +0100 Subject: [PATCH 4/4] Create Kafka service from yaml --- config/types.js | 4 ++++ pages/c/_cluster/kafka/service/index.vue | 17 +++++++++-------- 2 files changed, 13 insertions(+), 8 deletions(-) diff --git a/config/types.js b/config/types.js index 03296131535..4780bd3a114 100644 --- a/config/types.js +++ b/config/types.js @@ -120,6 +120,10 @@ export const MONITORING = { } }; +export const KAFKA = { + SERVICE: 'kafka.strimzi.io.kafka', +}; + export const LONGHORN = { ENGINES: 'longhorn.io.engine', ENGINE_IMAGES: 'longhorn.io.engineimage', diff --git a/pages/c/_cluster/kafka/service/index.vue b/pages/c/_cluster/kafka/service/index.vue index 1ae984d2285..371e509ca8d 100644 --- a/pages/c/_cluster/kafka/service/index.vue +++ b/pages/c/_cluster/kafka/service/index.vue @@ -6,6 +6,7 @@ import TypeDescription from '@/components/TypeDescription'; import ResourceTable from '@/components/ResourceTable'; import { MONITORING } from '@/config/types'; +import { KAFKA } from '@/config/types'; import { allHash } from '@/utils/promise'; export default { components: { @@ -13,15 +14,15 @@ export default { }, async fetch() { - this.podMonitorSchema = this.$store.getters['cluster/schemaFor'](MONITORING.PODMONITOR); + this.kafkaService = this.$store.getters['cluster/schemaFor'](KAFKA.SERVICE); this.serviceMonitorSchema = this.$store.getters['cluster/schemaFor'](MONITORING.SERVICEMONITOR); const hash = await allHash( { - podMonitors: this.$store.dispatch('cluster/findAll', { type: MONITORING.PODMONITOR } ), + kafkaServices: this.$store.dispatch('cluster/findAll', { type: MONITORING.PODMONITOR } ), serviceMonitors: this.$store.dispatch('cluster/findAll', { type: MONITORING.SERVICEMONITOR } ) }); - this.podMonitors = hash.podMonitors; + this.kafkaServices = hash.kafkaServices; this.serviceMonitors = hash.serviceMonitors; }, @@ -29,7 +30,7 @@ export default { const initTab = this.$route.query.resource || MONITORING.SPOOFED.PODMONITOR; return { - podMonitors: [], serviceMonitors: [], podMonitorSchema: null, serviceMonitorSchema: null, initTab + kafkaServices: [], serviceMonitors: [], kafkaService: null, serviceMonitorSchema: null, initTab }; }, @@ -38,7 +39,7 @@ export default { const activeResource = this.$refs?.tabs?.activeTabName || this.routeSchema.id; return { - name: 'c-cluster-kafka-service', + name: 'c-cluster-kafka-service-create', params: { cluster: this.$route.params.cluster }, query: { resource: activeResource } }; @@ -59,9 +60,9 @@ export default {
- - - + + +