소스 검색

Merge pull request #44935 from corhere/fix-44925-ipvlan-unmarshal-panic

libnet/d/ipvlan: gracefully migrate from older dbs
Bjorn Neergaard 2 년 전
부모
커밋
c758d8b040
1개의 변경된 파일6개의 추가작업 그리고 1개의 파일을 삭제
  1. 6 1
      libnetwork/drivers/ipvlan/ipvlan_store.go

+ 6 - 1
libnetwork/drivers/ipvlan/ipvlan_store.go

@@ -188,7 +188,12 @@ func (config *configuration) UnmarshalJSON(b []byte) error {
 	config.Mtu = int(nMap["Mtu"].(float64))
 	config.Parent = nMap["Parent"].(string)
 	config.IpvlanMode = nMap["IpvlanMode"].(string)
-	config.IpvlanFlag = nMap["IpvlanFlag"].(string)
+	if v, ok := nMap["IpvlanFlag"]; ok {
+		config.IpvlanFlag = v.(string)
+	} else {
+		// Migrate config from an older daemon which did not have the flag configurable.
+		config.IpvlanFlag = flagBridge
+	}
 	config.Internal = nMap["Internal"].(bool)
 	config.CreatedSlaveLink = nMap["CreatedSubIface"].(bool)
 	if v, ok := nMap["Ipv4Subnets"]; ok {