Skip to content
Snippets Groups Projects

Enable export and import of SDN configuration

Merged Ghost User requested to merge export-import-sdn-config into develop
4 files
+ 31
9
Compare changes
  • Side-by-side
  • Inline
Files
4
@@ -31,16 +31,18 @@ type VenvManager struct {
dialConnectionURL string
dialOption grpc.DialOption
yamlFilepath string
sdnConfigFilepath string
containerRegistryURL string
pnd string
}
// NewVenvManager creates a new VenvManager to use.
func NewVenvManager(dialConnectionURL string, dialOption grpc.DialOption, yamlFilepath string, containerRegistryURL string) *VenvManager {
func NewVenvManager(dialConnectionURL string, dialOption grpc.DialOption, yamlFilepath string, sdnConfigFilepath string, containerRegistryURL string) *VenvManager {
v := new(VenvManager)
v.dialConnectionURL = dialConnectionURL
v.dialOption = dialOption
v.yamlFilepath = yamlFilepath
v.sdnConfigFilepath = sdnConfigFilepath
v.containerRegistryURL = containerRegistryURL
return v
}
@@ -90,7 +92,10 @@ func (v *VenvManager) CreateSDNConfigFile() error {
return err
}
fmt.Println(sdnConfigReponse)
err = v.writeSDNConfigToFile(*sdnConfigReponse)
if err != nil {
return err
}
return nil
}
@@ -123,6 +128,16 @@ func (v *VenvManager) getSDNConfigData() (*string, error) {
return &sdnConfigResponse.SdnConfig, nil
}
// writeSDNConfigToFile wriets the SDN configuration in a string to a file
func (v *VenvManager) writeSDNConfigToFile(sdnConfigToWrite string) error {
err := os.WriteFile(v.sdnConfigFilepath, []byte(sdnConfigToWrite), 0644)
if err != nil {
return err
}
return nil
}
// CreateTopologyFile creates the topology file.
func (v *VenvManager) CreateTopologyFile() error {
topologyData, err := v.getTopologyData()
Loading