Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ step:
schema: schema/properties/spec/properties/mode
type: radio
- if:
name: isEqualToModelPathValue|Replicaset|/spec/mode
name: isEqualToModelPathValue|Combined|/spec/mode
type: function
label: Replicaset number
schema: schema/properties/spec/properties/replicas
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -154,7 +154,7 @@ step:
name: isMachineValid
type: custom
watcher:
func: onMachineChange|node|/spec/podTemplate/spec/resources
func: onMachineChange|node
paths:
- temp/properties/machine
- elements:
Expand Down
42 changes: 21 additions & 21 deletions charts/opskubedbcom-cassandraopsrequest-editor/ui/functions.js
Original file line number Diff line number Diff line change
Expand Up @@ -416,9 +416,10 @@ export const useFunc = (model) => {
const cluster = storeGet('/route/params/cluster')
const namespace = storeGet('/route/query/namespace') || getValue(model, '/metadata/namespace')
const name = storeGet('/route/params/name') || getValue(model, '/spec/databaseRef/name')
const version = storeGet('/route/params/version')

if (namespace && name) {
const url = `/clusters/${owner}/${cluster}/proxy/kubedb.com/v1alpha2/namespaces/${namespace}/cassandras/${name}`
const url = `/clusters/${owner}/${cluster}/proxy/kubedb.com/${version}/namespaces/${namespace}/cassandras/${name}`
const resp = await axios.get(url)

setDiscriminatorValue('/dbDetails', resp.data || {})
Expand Down Expand Up @@ -770,8 +771,7 @@ export const useFunc = (model) => {
function getMachines() {
const presets = storeGet('/kubedbuiPresets') || {}
const dbDetails = getValue(discriminator, '/dbDetails')
const spec = dbDetails?.spec?.podTemplate?.spec
const limits = spec?.resources?.requests || spec?.containers?.[0]?.resources?.requests || {}
const limits = getLimits()

const avlMachines = presets.admin?.machineProfiles?.available || []
let arr = []
Expand Down Expand Up @@ -821,7 +821,7 @@ export const useFunc = (model) => {

function setMachine() {
const dbDetails = getValue(discriminator, '/dbDetails')
const limits = dbDetails?.spec?.podTemplate?.spec?.resources?.requests || {}
const limits = getLimits()
const annotations = dbDetails?.metadata?.annotations || {}
const instance = annotations['kubernetes.io/instance-type']

Expand All @@ -845,9 +845,8 @@ export const useFunc = (model) => {
} else return { machine: 'custom', cpu: limits.cpu, memory: limits.memory }
}

function onMachineChange(type, valPath) {
let selectedMachine = {}
selectedMachine = getValue(discriminator, '/machine')
function onMachineChange(type) {
const selectedMachine = getValue(discriminator, '/machine') || {}
const machine = machinesFromPreset.find((item) => item.id === selectedMachine.machine)

let obj = {}
Expand Down Expand Up @@ -1783,23 +1782,10 @@ export const useFunc = (model) => {
return data || 'No Data Found'
}

function setExporter(type) {
let path = `/dbDetails/spec/monitor/prometheus/exporter/resources/limits/${type}`
const limitVal = getValue(discriminator, path)

if (!limitVal) {
path = `/dbDetails/spec/monitor/prometheus/exporter/resources/requests/${type}`
const reqVal = getValue(discriminator, path)

if (reqVal) return reqVal
}
return limitVal
}

function isMachineValid() {
const dbDetails = getValue(discriminator, '/dbDetails')
const spec = dbDetails?.spec?.podTemplate?.spec
const limits = spec?.resources?.requests || spec?.containers?.[0]?.resources?.requests || {}
const limits = getLimits()

const selectedMachine = getValue(discriminator, '/machine')
const selectedLimits = { cpu: selectedMachine.cpu, memory: selectedMachine.memory }
Expand All @@ -1810,6 +1796,20 @@ export const useFunc = (model) => {
return false
}

function getLimits() {
const dbDetails = getValue(discriminator, '/dbDetails')
let limits = {}
const containers = dbDetails?.spec?.podTemplate?.spec?.containers || []
if (containers.length === 0)
limits = dbDetails?.spec?.podTemplate?.spec?.resources?.requests || {}
else {
const kind = dbDetails?.kind
const resource = containers.filter((ele) => ele.name === kind?.toLowerCase())
limits = resource[0]?.resources?.requests || {}
}
return limits
}

return {
isMachineValid,
fetchAliasOptions,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -154,7 +154,7 @@ step:
name: isMachineValid
type: custom
watcher:
func: onMachineChange|node|/spec/podTemplate/spec/resources
func: onMachineChange|node
paths:
- temp/properties/machine
- elements:
Expand Down
65 changes: 26 additions & 39 deletions charts/opskubedbcom-clickhouseopsrequest-editor/ui/functions.js
Original file line number Diff line number Diff line change
Expand Up @@ -421,9 +421,10 @@ export const useFunc = (model) => {
const cluster = storeGet('/route/params/cluster')
const namespace = storeGet('/route/query/namespace') || getValue(model, '/metadata/namespace')
const name = storeGet('/route/params/name') || getValue(model, '/spec/databaseRef/name')
const version = storeGet('/route/params/version')

if (namespace && name) {
const url = `/clusters/${owner}/${cluster}/proxy/kubedb.com/v1alpha2/namespaces/${namespace}/clickhouses/${name}`
const url = `/clusters/${owner}/${cluster}/proxy/kubedb.com/${version}/namespaces/${namespace}/clickhouses/${name}`
const resp = await axios.get(url)

setDiscriminatorValue('/dbDetails', resp.data || {})
Expand Down Expand Up @@ -782,8 +783,7 @@ export const useFunc = (model) => {
function getMachines() {
const presets = storeGet('/kubedbuiPresets') || {}
const dbDetails = getValue(discriminator, '/dbDetails')
const containers = dbDetails?.spec?.podTemplate?.spec?.containers || []
const limits = containers[0]?.resources?.limits || {}
const limits = getLimits()

const avlMachines = presets.admin?.machineProfiles?.available || []
let arr = []
Expand Down Expand Up @@ -833,10 +833,10 @@ export const useFunc = (model) => {

function setMachine() {
const dbDetails = getValue(discriminator, '/dbDetails')
const containers = dbDetails?.spec?.podTemplate?.spec?.containers || []
const limits = containers[0]?.resources?.limits || {}
const limits = getLimits()
const annotations = dbDetails?.metadata?.annotations || {}
const instance = annotations['kubernetes.io/instance-type']
const type = dbDetails?.spec?.clusterTopology ? 'cluster' : 'standalone'

let parsedInstance = {}
try {
Expand All @@ -845,8 +845,7 @@ export const useFunc = (model) => {
console.log(e)
parsedInstance = instance || {}
}

const machine = parsedInstance || 'custom'
const machine = parsedInstance[type] || 'custom'

const machinePresets = machinesFromPreset.find((item) => item.id === machine)
if (machinePresets) {
Expand All @@ -858,9 +857,8 @@ export const useFunc = (model) => {
} else return { machine: 'custom', cpu: limits.cpu, memory: limits.memory }
}

function onMachineChange(type, valPath) {
let selectedMachine = {}
selectedMachine = getValue(discriminator, '/machine')
function onMachineChange(type) {
const selectedMachine = getValue(discriminator, '/machine') || {}
const machine = machinesFromPreset.find((item) => item.id === selectedMachine.machine)

let obj = {}
Expand Down Expand Up @@ -1796,35 +1794,9 @@ export const useFunc = (model) => {
return data || 'No Data Found'
}

function setExporter(type) {
let path = `/dbDetails/spec/monitor/prometheus/exporter/resources/limits/${type}`
const limitVal = getValue(discriminator, path)

if (!limitVal) {
path = `/dbDetails/spec/monitor/prometheus/exporter/resources/requests/${type}`
const reqVal = getValue(discriminator, path)

if (reqVal) return reqVal
}
return limitVal
}

function onExporterResourceChange(type) {
const commitPath = `/spec/verticalScaling/exporter/resources/requests/${type}`
const valPath = `/spec/verticalScaling/exporter/resources/limits/${type}`
const val = getValue(model, valPath)
if (val)
commit('wizard/model$update', {
path: commitPath,
value: val,
force: true,
})
}

function isMachineValid() {
const dbDetails = getValue(discriminator, '/dbDetails')
const containers = dbDetails?.spec?.podTemplate?.spec?.containers || []
const limits = containers[0]?.resources?.limits || {}
const limits = getLimits()

const selectedMachine = getValue(discriminator, '/machine')
const selectedLimits = { cpu: selectedMachine.cpu, memory: selectedMachine.memory }
Expand All @@ -1835,10 +1807,25 @@ export const useFunc = (model) => {
return false
}

function getLimits() {
const dbDetails = getValue(discriminator, '/dbDetails')
const isTopology = !!dbDetails?.spec?.clusterTopology

const spec = isTopology
? dbDetails?.spec?.clusterTopology?.cluster?.podTemplate?.spec
: dbDetails?.spec?.podTemplate?.spec

const containers = spec?.containers ?? []

if (containers.length === 0) {
return spec?.resources?.requests ?? {}
}
const kind = dbDetails?.kind?.toLowerCase()
return containers.find((container) => container.name === kind)?.resources?.requests ?? {}
}

return {
isMachineValid,
setExporter,
onExporterResourceChange,
fetchAliasOptions,
validateNewCertificates,
disableAlias,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -154,7 +154,7 @@ step:
name: isMachineValid
type: custom
watcher:
func: onMachineChange|documentdb|/spec/podTemplate/spec/resources
func: onMachineChange|documentdb
paths:
- temp/properties/machine
- elements:
Expand Down Expand Up @@ -218,10 +218,6 @@ step:
label: Memory
schema: schema/properties/spec/properties/verticalScaling/properties/exporter/properties/resources/properties/limits/properties/memory
type: input
watcher:
func: onExporterResourceChange|memory
paths:
- schema/properties/spec/properties/verticalScaling/properties/exporter/properties/resources/properties/limits/properties/memory
showLabels: true
type: horizontal-layout
hideBlock: true
Expand Down
52 changes: 21 additions & 31 deletions charts/opskubedbcom-documentdbopsrequest-editor/ui/functions.js
Original file line number Diff line number Diff line change
Expand Up @@ -421,9 +421,10 @@ export const useFunc = (model) => {
const cluster = storeGet('/route/params/cluster')
const namespace = storeGet('/route/query/namespace') || getValue(model, '/metadata/namespace')
const name = storeGet('/route/params/name') || getValue(model, '/spec/databaseRef/name')
const version = storeGet('/route/params/version')

if (namespace && name) {
const url = `/clusters/${owner}/${cluster}/proxy/kubedb.com/v1alpha2/namespaces/${namespace}/documentdbs/${name}`
const url = `/clusters/${owner}/${cluster}/proxy/kubedb.com/${version}/namespaces/${namespace}/documentdbs/${name}`
const resp = await axios.get(url)

setDiscriminatorValue('/dbDetails', resp.data || {})
Expand Down Expand Up @@ -782,11 +783,7 @@ export const useFunc = (model) => {
function getMachines() {
const presets = storeGet('/kubedbuiPresets') || {}
const dbDetails = getValue(discriminator, '/dbDetails')
const containers = dbDetails?.spec?.topology?.[type]?.podTemplate?.spec?.containers || []
const kind = dbDetails?.kind
const resource = containers.filter((ele) => ele.name === kind?.toLowerCase())
const limits = resource[0]?.resources?.requests || {}

const limits = getLimits()
const avlMachines = presets.admin?.machineProfiles?.available || []
let arr = []
if (avlMachines.length) {
Expand Down Expand Up @@ -835,10 +832,7 @@ export const useFunc = (model) => {

function setMachine() {
const dbDetails = getValue(discriminator, '/dbDetails')
const containers = dbDetails?.spec?.topology?.[type]?.podTemplate?.spec?.containers || []
const kind = dbDetails?.kind
const resource = containers.filter((ele) => ele.name === kind?.toLowerCase())
const limits = resource[0]?.resources?.requests || {}
const limits = getLimits()
const annotations = dbDetails?.metadata?.annotations || {}
const instance = annotations['kubernetes.io/instance-type']

Expand All @@ -862,9 +856,8 @@ export const useFunc = (model) => {
} else return { machine: 'custom', cpu: limits.cpu, memory: limits.memory }
}

function onMachineChange(type, valPath) {
let selectedMachine = {}
selectedMachine = getValue(discriminator, '/machine')
function onMachineChange(type) {
const selectedMachine = getValue(discriminator, '/machine') || {}
const machine = machinesFromPreset.find((item) => item.id === selectedMachine.machine)

let obj = {}
Expand Down Expand Up @@ -1813,25 +1806,9 @@ export const useFunc = (model) => {
return limitVal
}

function onExporterResourceChange(type) {
const commitPath = `/spec/verticalScaling/exporter/resources/requests/${type}`
const valPath = `/spec/verticalScaling/exporter/resources/limits/${type}`
const val = getValue(model, valPath)
if (val)
commit('wizard/model$update', {
path: commitPath,
value: val,
force: true,
})
}

function isMachineValid() {
const dbDetails = getValue(discriminator, '/dbDetails')
const containers = dbDetails?.spec?.podTemplate?.spec?.containers || []
const kind = dbDetails?.kind
const resource = containers.filter((ele) => ele.name === kind?.toLowerCase())
const limits = resource[0]?.resources?.requests || {}
console.log(resource)
const limits = getLimits()

const selectedMachine = getValue(discriminator, '/machine')
const selectedLimits = { cpu: selectedMachine.cpu, memory: selectedMachine.memory }
Expand All @@ -1842,10 +1819,23 @@ export const useFunc = (model) => {
return false
}

function getLimits() {
const dbDetails = getValue(discriminator, '/dbDetails')
let limits = {}
const containers = dbDetails?.spec?.podTemplate?.spec?.containers || []
if (containers.length === 0)
limits = dbDetails?.spec?.podTemplate?.spec?.resources?.requests || {}
else {
const kind = dbDetails?.kind
const resource = containers.filter((ele) => ele.name === kind?.toLowerCase())
limits = resource[0]?.resources?.requests || {}
}
return limits
}

return {
isMachineValid,
setExporter,
onExporterResourceChange,
fetchAliasOptions,
validateNewCertificates,
disableAlias,
Expand Down
Loading
Loading