X-Git-Url: https://gerrit.fd.io/r/gitweb?a=blobdiff_plain;f=extras%2Fhs-test%2Ftopo.go;h=6cb294511b34573f004db02c65d6c76df4fee9bf;hb=109f3ce4eba0a6ba869752f24cfaae73ab70bb2d;hp=cf50dadd42a9cad46e810b1c1919617be9942106;hpb=f3ee2b636ad3b12e7484ec6fb13f220699417046;p=vpp.git diff --git a/extras/hs-test/topo.go b/extras/hs-test/topo.go old mode 100755 new mode 100644 index cf50dadd42a..6cb294511b3 --- a/extras/hs-test/topo.go +++ b/extras/hs-test/topo.go @@ -2,23 +2,19 @@ package main import ( "fmt" - "io/ioutil" - "os" - "strings" - - "gopkg.in/yaml.v3" ) type NetDevConfig map[string]interface{} type ContainerConfig map[string]interface{} +type VolumeConfig map[string]interface{} type YamlTopology struct { Devices []NetDevConfig `yaml:"devices"` Containers []ContainerConfig `yaml:"containers"` - Volumes []string `yaml:"volumes"` + Volumes []VolumeConfig `yaml:"volumes"` } -func AddAddress(device, address, ns string) error { +func addAddress(device, address, ns string) error { c := []string{"ip", "addr", "add", address, "dev", device} cmd := appendNetns(c, ns) err := cmd.Run() @@ -27,52 +23,3 @@ func AddAddress(device, address, ns string) error { } return nil } - -func convertToNetConfig(t *YamlTopology) (*NetTopology, error) { - var topology NetTopology - for _, dev := range t.Devices { - topology = append(topology, NewNetConfig(dev)) - } - return &topology, nil -} - -func loadTopoFile(topoName string) (*NetTopology, error) { - var yamlTopo YamlTopology - - data, err := ioutil.ReadFile(topoName) - if err != nil { - return nil, fmt.Errorf("read error: %v", err) - } - - err = yaml.Unmarshal(data, &yamlTopo) - if err != nil { - return nil, fmt.Errorf("error parsing topology data: %v", err) - } - - return convertToNetConfig(&yamlTopo) -} - -func LoadTopology(path, topoName string) (*NetTopology, error) { - dir, err := os.Open(path) - if err != nil { - return nil, err - } - defer dir.Close() - - files, err := dir.Readdir(0) - if err != nil { - return nil, err - } - - for i := range files { - file := files[i] - fileName := file.Name() - - // cut off file extension - f := strings.Split(fileName, ".")[0] - if f == topoName { - return loadTopoFile(path + fileName) - } - } - return nil, fmt.Errorf("topology '%s' not found", topoName) -}