func addPersistentVolumeClaim()

in pkg/flink/resources.go [110:141]


func addPersistentVolumeClaim(
	claims []corev1.PersistentVolumeClaim,
	volumeMounts []corev1.VolumeMount,
	claim corev1.PersistentVolumeClaim,
	mountPath string) ([]corev1.PersistentVolumeClaim, []corev1.VolumeMount) {

	claimsByName := make(map[string]corev1.PersistentVolumeClaim)
	for _, c := range claims {
		claimsByName[c.Name] = c
	}

	mounts := []corev1.VolumeMount{}
	for _, volumeMount := range volumeMounts {
		if volumeMount.MountPath != mountPath {
			mounts = append(mounts, volumeMount)
		} else {
			delete(claimsByName, volumeMount.Name)
		}
	}
	mounts = append(mounts, corev1.VolumeMount{
		Name:      claim.Name,
		ReadOnly:  false,
		MountPath: volumeClaimMountPath,
	})

	templates := []corev1.PersistentVolumeClaim{claim}
	for _, c := range claimsByName {
		templates = append(templates, c)
	}

	return templates, mounts
}