Skip to content

Commit b79e5c1

Browse files
committed
Don't use the aws pattern as default
1 parent 60cd595 commit b79e5c1

1 file changed

Lines changed: 19 additions & 13 deletions

File tree

platform/linux_platform.go

Lines changed: 19 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -825,18 +825,14 @@ func (p linux) discoverInstanceStorageDevices(devices []boshsettings.DiskSetting
825825
// discoverNVMeInstanceStorage discovers NVMe instance storage by filtering out
826826
// IaaS-managed volumes (e.g., EBS on AWS, Managed Disks on Azure) using symlinks.
827827
// The patterns are configurable via LinuxOptions to support different cloud providers.
828+
// If InstanceStorageManagedVolumePattern is not configured, all NVMe devices are
829+
// considered instance storage (no filtering).
828830
func (p linux) discoverNVMeInstanceStorage(devices []boshsettings.DiskSettings) ([]string, error) {
829831
nvmePattern := p.options.InstanceStorageDevicePattern
830832
if nvmePattern == "" {
831833
nvmePattern = boshdpresolv.DefaultNVMeDevicePattern
832834
}
833835

834-
managedVolumePattern := p.options.InstanceStorageManagedVolumePattern
835-
if managedVolumePattern == "" {
836-
// Default to AWS EBS pattern; other providers should configure their pattern
837-
managedVolumePattern = boshdpresolv.AWSEBSSymlinkPattern
838-
}
839-
840836
// Get all NVMe devices
841837
allNvmeDevices, err := p.symlinkDeviceResolver.GetDevicesByPattern(nvmePattern)
842838
if err != nil {
@@ -845,14 +841,24 @@ func (p linux) discoverNVMeInstanceStorage(devices []boshsettings.DiskSettings)
845841

846842
p.logger.Debug(logTag, "Found NVMe devices: %v", allNvmeDevices)
847843

848-
// Resolve managed disk symlinks to device paths (to exclude them)
849-
managedDevices, err := p.symlinkDeviceResolver.ResolveSymlinksToDevices(managedVolumePattern)
850-
if err != nil {
851-
return nil, bosherr.WrapError(err, "Resolving managed disk symlinks")
852-
}
844+
// Filter out managed volumes if pattern is configured
845+
managedVolumePattern := p.options.InstanceStorageManagedVolumePattern
846+
var instanceStorage []string
853847

854-
// Instance storage = all NVMe devices minus managed disks
855-
instanceStorage := p.symlinkDeviceResolver.FilterDevices(allNvmeDevices, managedDevices)
848+
if managedVolumePattern == "" {
849+
// Resolve managed disk symlinks to device paths (to exclude them)
850+
managedDevices, err := p.symlinkDeviceResolver.ResolveSymlinksToDevices(managedVolumePattern)
851+
if err != nil {
852+
return nil, bosherr.WrapError(err, "Resolving managed disk symlinks")
853+
}
854+
855+
// Instance storage = all NVMe devices minus managed disks
856+
instanceStorage = p.symlinkDeviceResolver.FilterDevices(allNvmeDevices, managedDevices)
857+
} else {
858+
// No managed volume pattern configured - all NVMe devices are instance storage
859+
p.logger.Debug(logTag, "No InstanceStorageManagedVolumePattern configured, using all NVMe devices as instance storage")
860+
instanceStorage = allNvmeDevices
861+
}
856862

857863
for _, devicePath := range instanceStorage {
858864
p.logger.Info(logTag, "Discovered instance storage: %s", devicePath)

0 commit comments

Comments
 (0)