🌳
pt0/deployF/k8sF/mergeVolsMntsF.mts
1import * as _ from 'lodash-es'
2import type { V1Volume, V1VolumeMount } from '@kubernetes/client-node'
3import type { KubeResource } from './ctxF/klusterCtxF.mts'
5type VolMnts = {
6 volumes?: V1Volume | V1Volume[]
7 volumeMounts?: V1VolumeMount | V1VolumeMount[]
8 resources?: KubeResource | KubeResource[]
9}
11export const mergeVolsMnts = (...volMntsA: VolMnts[]) => {
12 const volumes = _.chain(volMntsA).map('volumes').map(_.castArray).flatten().value()
13 const volumeMounts = _.chain(volMntsA).map('volumeMounts').map(_.castArray).flatten().value()
14 const resources = _.chain(volMntsA).map('resources').map(_.castArray).flatten().uniq().value()
15 return {volumes, volumeMounts, resources}