Validates that all the given resources are persistent volumes.
| 956 | |
| 957 | // Validates that all the given resources are persistent volumes. |
| 958 | Option<Error> validatePersistentVolume( |
| 959 | const RepeatedPtrField<Resource>& volumes) |
| 960 | { |
| 961 | foreach (const Resource& volume, volumes) { |
| 962 | if (!volume.has_disk()) { |
| 963 | return Error("Resource " + stringify(volume) + " does not have DiskInfo"); |
| 964 | } else if (!volume.disk().has_persistence()) { |
| 965 | return Error("'persistence' is not set in DiskInfo"); |
| 966 | } else if (!volume.disk().has_volume()) { |
| 967 | return Error("Expecting 'volume' to be set for persistent volume"); |
| 968 | } else if (volume.disk().volume().mode() == Volume::RO) { |
| 969 | return Error("Read-only persistent volume not supported"); |
| 970 | } |
| 971 | } |
| 972 | |
| 973 | return None(); |
| 974 | } |
| 975 | |
| 976 | |
| 977 | // Validates that all the given resources are allocated to same role. |