( cluster *apiv1.Cluster, podName string, extensions []apiv1.ExtensionConfiguration, )
| 96 | } |
| 97 | |
| 98 | func createPostgresVolumes( |
| 99 | cluster *apiv1.Cluster, |
| 100 | podName string, |
| 101 | extensions []apiv1.ExtensionConfiguration, |
| 102 | ) []corev1.Volume { |
| 103 | result := []corev1.Volume{ |
| 104 | { |
| 105 | Name: pgdataVolumeName, |
| 106 | VolumeSource: corev1.VolumeSource{ |
| 107 | PersistentVolumeClaim: &corev1.PersistentVolumeClaimVolumeSource{ |
| 108 | ClaimName: podName, |
| 109 | }, |
| 110 | }, |
| 111 | }, |
| 112 | createEphemeralVolume(cluster), |
| 113 | { |
| 114 | Name: "shm", |
| 115 | VolumeSource: corev1.VolumeSource{ |
| 116 | EmptyDir: &corev1.EmptyDirVolumeSource{ |
| 117 | Medium: "Memory", |
| 118 | SizeLimit: cluster.Spec.EphemeralVolumesSizeLimit.GetShmLimit(), |
| 119 | }, |
| 120 | }, |
| 121 | }, |
| 122 | } |
| 123 | |
| 124 | if cluster.ShouldCreateWalArchiveVolume() { |
| 125 | result = append(result, |
| 126 | corev1.Volume{ |
| 127 | Name: "pg-wal", |
| 128 | VolumeSource: corev1.VolumeSource{ |
| 129 | PersistentVolumeClaim: &corev1.PersistentVolumeClaimVolumeSource{ |
| 130 | ClaimName: podName + apiv1.WalArchiveVolumeSuffix, |
| 131 | }, |
| 132 | }, |
| 133 | }) |
| 134 | } |
| 135 | |
| 136 | // we should create volumeMounts in fixed sequence as podSpec will store it in annotation and |
| 137 | // later it will be retrieved to do deepEquals |
| 138 | if cluster.ContainsTablespaces() { |
| 139 | // Try to get a fix order of name |
| 140 | tbsNames := getSortedTablespaceList(cluster) |
| 141 | for i := range tbsNames { |
| 142 | result = append(result, |
| 143 | corev1.Volume{ |
| 144 | Name: VolumeMountNameForTablespace(tbsNames[i]), |
| 145 | VolumeSource: corev1.VolumeSource{ |
| 146 | PersistentVolumeClaim: &corev1.PersistentVolumeClaimVolumeSource{ |
| 147 | ClaimName: PvcNameForTablespace(podName, tbsNames[i]), |
| 148 | }, |
| 149 | }, |
| 150 | }, |
| 151 | ) |
| 152 | } |
| 153 | } |
| 154 | |
| 155 | if cluster.ShouldCreateProjectedVolume() { |
no test coverage detected