in pkg/controller/sub_controller/sub_controller.go [169:200]
func (d *SubDefaultController) GetFinalPersistentVolumes(ctx context.Context, dcr *dorisv1.DorisCluster, componentType dorisv1.ComponentType) ([]dorisv1.PersistentVolume, error) {
var baseSpec dorisv1.BaseSpec
switch componentType {
case dorisv1.Component_FE:
baseSpec = dcr.Spec.FeSpec.BaseSpec
case dorisv1.Component_BE:
baseSpec = dcr.Spec.BeSpec.BaseSpec
case dorisv1.Component_CN:
baseSpec = dcr.Spec.CnSpec.BaseSpec
case dorisv1.Component_Broker:
baseSpec = dcr.Spec.BrokerSpec.BaseSpec
default:
klog.Infof("GetFinalPersistentVolumes the componentType %s is not supported.", componentType)
}
config, err := d.GetConfig(ctx, &baseSpec.ConfigMapInfo, dcr.Namespace, componentType)
if err != nil {
klog.Errorf("GetFinalPersistentVolumes GetConfig failed, namespace: %s,err: %s \n", dcr.Namespace, err.Error())
return nil, err
}
_, _, sharedPaths := resource.BuildSharedVolumesAndVolumeMounts(dcr.Spec.SharedPersistentVolumeClaims, componentType)
dorisPersistentVolumes, err := resource.GenerateEveryoneMountPathDorisPersistentVolume(&baseSpec, sharedPaths, config, componentType)
if err != nil {
klog.Errorf("GetFinalPersistentVolumes GenerateEveryoneMountPathDorisPersistentVolume failed, namespace: %s,err: %s \n", dcr.Namespace, err.Error())
return nil, err
}
return dorisPersistentVolumes, nil
}