mirror of
https://github.com/NVIDIA/nvidia-container-toolkit
synced 2025-02-16 17:42:20 +00:00
Make order of discoverers deterministic
Signed-off-by: Evan Lezar <elezar@nvidia.com>
This commit is contained in:
parent
2c1e356370
commit
62f608a3fe
@ -84,12 +84,16 @@ func newFromMountSpecs(logger *logrus.Logger, locators map[csv.MountSpecType]loo
|
|||||||
}
|
}
|
||||||
|
|
||||||
var discoverers []Discover
|
var discoverers []Discover
|
||||||
|
var mountSpecTypes []csv.MountSpecType
|
||||||
candidatesByType := make(map[csv.MountSpecType][]string)
|
candidatesByType := make(map[csv.MountSpecType][]string)
|
||||||
for _, t := range targets {
|
for _, t := range targets {
|
||||||
|
if _, exists := candidatesByType[t.Type]; !exists {
|
||||||
|
mountSpecTypes = append(mountSpecTypes, t.Type)
|
||||||
|
}
|
||||||
candidatesByType[t.Type] = append(candidatesByType[t.Type], t.Path)
|
candidatesByType[t.Type] = append(candidatesByType[t.Type], t.Path)
|
||||||
}
|
}
|
||||||
|
|
||||||
for t, candidates := range candidatesByType {
|
for _, t := range mountSpecTypes {
|
||||||
locator, exists := locators[t]
|
locator, exists := locators[t]
|
||||||
if !exists {
|
if !exists {
|
||||||
return nil, fmt.Errorf("no locator defined for '%v'", t)
|
return nil, fmt.Errorf("no locator defined for '%v'", t)
|
||||||
@ -98,7 +102,7 @@ func newFromMountSpecs(logger *logrus.Logger, locators map[csv.MountSpecType]loo
|
|||||||
m := &mounts{
|
m := &mounts{
|
||||||
logger: logger,
|
logger: logger,
|
||||||
lookup: locator,
|
lookup: locator,
|
||||||
required: candidates,
|
required: candidatesByType[t],
|
||||||
}
|
}
|
||||||
|
|
||||||
switch t {
|
switch t {
|
||||||
|
Loading…
Reference in New Issue
Block a user