diff --git a/src/confd/share/migrate/1.6/40-bridge-port-remove-ip.sh b/src/confd/share/migrate/1.6/40-bridge-port-remove-ip.sh new file mode 100755 index 000000000..a7004eccd --- /dev/null +++ b/src/confd/share/migrate/1.6/40-bridge-port-remove-ip.sh @@ -0,0 +1,20 @@ +#!/bin/sh +# Remove ietf-ip:ipv4 and ietf-ip:ipv6 from bridge port interfaces. +# Bridge ports should not have IP addresses; the IP address should +# be configured on the bridge interface itself. +file=$1 +temp=${file}.tmp + +jq ' +if .["ietf-interfaces:interfaces"]?.interface then + .["ietf-interfaces:interfaces"].interface |= map( + if .["infix-interfaces:bridge-port"] and .type != "infix-if-type:bridge" then + del(.["ietf-ip:ipv4"], .["ietf-ip:ipv6"]) + else + . + end + ) +else + . +end +' "$file" > "$temp" && mv "$temp" "$file" diff --git a/src/confd/share/migrate/1.6/Makefile.am b/src/confd/share/migrate/1.6/Makefile.am index fdb2b6a01..ec568526c 100644 --- a/src/confd/share/migrate/1.6/Makefile.am +++ b/src/confd/share/migrate/1.6/Makefile.am @@ -1,4 +1,5 @@ migratedir = $(pkgdatadir)/migrate/1.6 dist_migrate_DATA = 10-dhcp-client-to-ipv4.sh \ 20-autoconf-to-presence.sh \ - 30-ospf-backbone-area-type.sh + 30-ospf-backbone-area-type.sh \ + 40-bridge-port-remove-ip.sh