reconcileVolumes adds plan nodes for volume creation. Recreation of a diverged volume is handled by ensureProjectVolumes (which already prompts the user) before reconcile runs, so the reconciler does not duplicate that decision here.
()
| 243 | // the user) before reconcile runs, so the reconciler does not duplicate that |
| 244 | // decision here. |
| 245 | func (r *reconciler) reconcileVolumes() { |
| 246 | for _, key := range sortedKeys(r.project.Volumes) { |
| 247 | desired := r.project.Volumes[key] |
| 248 | if desired.External { |
| 249 | continue |
| 250 | } |
| 251 | if _, exists := r.observed.Volumes[key]; !exists { |
| 252 | r.planCreateVolume(key, &desired) |
| 253 | } |
| 254 | } |
| 255 | } |
| 256 | |
| 257 | // planCreateVolume adds a single CreateVolume node and records it for dependency tracking. |
| 258 | func (r *reconciler) planCreateVolume(key string, vol *types.VolumeConfig) *PlanNode { |
no test coverage detected