diff options
author | Trygve Laugstøl <trygvis@inamo.no> | 2024-10-06 11:45:14 +0200 |
---|---|---|
committer | Trygve Laugstøl <trygvis@inamo.no> | 2024-10-06 11:45:14 +0200 |
commit | 4aa11423038f181c3ad537a5172ef4075c236d00 (patch) | |
tree | fe5723feeeaa1e8d3c0d87b6e6b43f769cd974e7 /utils/yaml_ipam | |
parent | 4bacde703ea23ff9b7313b9dc6049c19ffce67f2 (diff) | |
download | infra-4aa11423038f181c3ad537a5172ef4075c236d00.tar.gz infra-4aa11423038f181c3ad537a5172ef4075c236d00.tar.bz2 infra-4aa11423038f181c3ad537a5172ef4075c236d00.tar.xz infra-4aa11423038f181c3ad537a5172ef4075c236d00.zip |
ipam util
Diffstat (limited to 'utils/yaml_ipam')
-rw-r--r-- | utils/yaml_ipam/yaml_ipam.go | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/utils/yaml_ipam/yaml_ipam.go b/utils/yaml_ipam/yaml_ipam.go new file mode 100644 index 0000000..ff65155 --- /dev/null +++ b/utils/yaml_ipam/yaml_ipam.go @@ -0,0 +1,26 @@ +package yaml_ipam + +import "gopkg.in/yaml.v3" + +type Ipam struct { + Ipam6 Ipam6 `yaml:"ipam6"` +} + +type Ipam6 struct { + Networks map[string]Network6Yaml `yaml:"networks"` +} + +type Network6Yaml struct { + Range string `yaml:"range"` + Hosts map[string]string `yaml:"hosts"` +} + +func Parse(bs []byte) (Ipam, error) { + var ipam Ipam + err := yaml.Unmarshal(bs, &ipam) + if err != nil { + return Ipam{}, err + } + + return ipam, nil +} |