Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package cloud-netconfig for openSUSE:Factory
checked in at 2025-05-30 14:34:57
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/cloud-netconfig (Old)
and /work/SRC/openSUSE:Factory/.cloud-netconfig.new.25440 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "cloud-netconfig"
Fri May 30 14:34:57 2025 rev:21 rq:1280964 version:1.15
Changes:
--------
--- /work/SRC/openSUSE:Factory/cloud-netconfig/cloud-netconfig.changes
2024-03-22 15:32:20.302788846 +0100
+++
/work/SRC/openSUSE:Factory/.cloud-netconfig.new.25440/cloud-netconfig.changes
2025-05-30 17:20:16.206621388 +0200
@@ -1,0 +2,7 @@
+Fri May 16 13:48:50 UTC 2025 - Joachim Gleissner <[email protected]>
+
+- Update to version 1.15
+ + Add support for creating IPv6 default route in GCE (bsc#1240869)
+ + Minor fix when looking up IPv6 default route
+
+-------------------------------------------------------------------
Old:
----
cloud-netconfig-1.14.tar.bz2
New:
----
cloud-netconfig-1.15.tar.bz2
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ cloud-netconfig.spec ++++++
--- /var/tmp/diff_new_pack.yikxo1/_old 2025-05-30 17:20:16.666640825 +0200
+++ /var/tmp/diff_new_pack.yikxo1/_new 2025-05-30 17:20:16.666640825 +0200
@@ -1,7 +1,7 @@
#
# spec file for package cloud-netconfig
#
-# Copyright (c) 2024 SUSE LLC
+# Copyright (c) 2025 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -48,7 +48,7 @@
%endif
Name: %{base_name}%{flavor_suffix}
-Version: 1.14
+Version: 1.15
Release: 0
License: GPL-3.0-or-later
Summary: Network configuration scripts for %{csp_string}
++++++ cloud-netconfig-1.14.tar.bz2 -> cloud-netconfig-1.15.tar.bz2 ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/cloud-netconfig-1.14/VERSION
new/cloud-netconfig-1.15/VERSION
--- old/cloud-netconfig-1.14/VERSION 2024-03-20 15:41:47.646467296 +0100
+++ new/cloud-netconfig-1.15/VERSION 2025-05-14 16:19:55.128292615 +0200
@@ -1 +1 @@
-1.14
+1.15
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/cloud-netconfig-1.14/azure/functions.cloud-netconfig
new/cloud-netconfig-1.15/azure/functions.cloud-netconfig
--- old/cloud-netconfig-1.14/azure/functions.cloud-netconfig 2024-03-20
15:41:47.646467296 +0100
+++ new/cloud-netconfig-1.15/azure/functions.cloud-netconfig 2025-05-14
16:19:55.128292615 +0200
@@ -123,6 +123,14 @@
}
# -------------------------------------------------------------------
+# dummy, no gateway information in metadata
+#
+get_ipv6_gateway_from_metadata()
+{
+ return 0
+}
+
+# -------------------------------------------------------------------
# check whether metadata server is available
#
metadata_available()
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/cloud-netconfig-1.14/cloud-netconfig.spec
new/cloud-netconfig-1.15/cloud-netconfig.spec
--- old/cloud-netconfig-1.14/cloud-netconfig.spec 2024-03-20
15:41:47.646467296 +0100
+++ new/cloud-netconfig-1.15/cloud-netconfig.spec 2025-05-14
16:19:55.128292615 +0200
@@ -1,5 +1,5 @@
#
-# spec file
+# spec file for package cloud-netconfig
#
# Copyright (c) 2024 SUSE LLC
#
@@ -48,7 +48,7 @@
%endif
Name: %{base_name}%{flavor_suffix}
-Version: 1.14
+Version: 1.15
Release: 0
License: GPL-3.0-or-later
Summary: Network configuration scripts for %{csp_string}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/cloud-netconfig-1.14/common/cloud-netconfig
new/cloud-netconfig-1.15/common/cloud-netconfig
--- old/cloud-netconfig-1.14/common/cloud-netconfig 2024-03-09
14:11:54.869859294 +0100
+++ new/cloud-netconfig-1.15/common/cloud-netconfig 2025-05-16
15:48:18.812806442 +0200
@@ -362,20 +362,20 @@
# update routing policies so connections from addresses on
# secondary interfaces are routed via those
- # also include IP rangers
+ # also include IP ranges
local found prio from ip rest
for addr in ${addrs[@]} ; do
found=0
while read -r prio from ip rest ; do
- if [[ "${addr%/32}" == "$ip" ]]; then
+ if [[ "${addr%/*}" == "$ip" ]]; then
found=1
break
fi
done < <(ip $ipv rule show)
if [[ $found == 0 ]]; then
- debug "creating policy rule for src address ${addr%/32}"
- ip $ipv rule add from ${addr%/32} priority $dest_table lookup
$dest_table
- ip $ipv rule add from ${addr%/32} priority $gw_table lookup
$gw_table
+ debug "creating policy rule for src address ${addr%/*}"
+ ip $ipv rule add from ${addr%/*} priority $dest_table lookup
$dest_table
+ ip $ipv rule add from ${addr%/*} priority $gw_table lookup
$gw_table
fi
done
@@ -557,6 +557,11 @@
local INTERFACE="$1"
test -z "$INTERFACE" && return 1
+ local HWADDR="$(cat /sys/class/net/${INTERFACE}/address)"
+ if [ -z "$HWADDR" ]; then
+ warn "Could not determine MAC address for $INTERFACE"
+ return 1
+ fi
local ifindex="$(cat /sys/class/net/${INTERFACE}/ifindex)"
if [ -z "$ifindex" ]; then
warn "Could not determine interface index for $INTERFACE"
@@ -567,9 +572,10 @@
local gw_table="$((ifindex+30400))"
# if necessary, create route table with default route for interface
- if [ -z "$(ip -6 route show default dev $INTERFACE table $RTABLE
2>/dev/null)" ]; then
+ if [ -z "$(ip -6 route show default dev $INTERFACE table $gw_table
2>/dev/null)" ]; then
# it is possible that we received the DHCP response before the
# the router advertisement; in that case, we wait up to 10 secs
+ debug "waiting for IPv6 gateway"
local route via GW rest counter=0
while [[ $counter -lt 10 ]]; do
counter=$((counter+1))
@@ -580,6 +586,17 @@
sleep 1
fi
done
+ # GCE does not advertise default routes on secondary interfaces
+ # but available from metadata
+ if [[ -z $GW ]]; then
+ GW=$(get_ipv6_gateway_from_metadata $HWADDR)
+ if [[ -n $GW ]]; then
+ debug "adding default route via $GW for $INTERFACE table
$gw_table"
+ ip -6 route add default via $GW dev "$INTERFACE" metric
$((ifindex+20000))
+ else
+ warn "No IPv6 default route for $INTERFACE"
+ fi
+ fi
fi
update_routing_tables -6 $INTERFACE $dest_table $gw_table
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/cloud-netconfig-1.14/ec2/functions.cloud-netconfig
new/cloud-netconfig-1.15/ec2/functions.cloud-netconfig
--- old/cloud-netconfig-1.14/ec2/functions.cloud-netconfig 2024-03-09
13:29:18.063558707 +0100
+++ new/cloud-netconfig-1.15/ec2/functions.cloud-netconfig 2025-05-14
16:19:55.128292615 +0200
@@ -120,6 +120,14 @@
}
# -------------------------------------------------------------------
+# dummy, EC2 provides gateway router advertisements
+#
+get_ipv6_gateway_from_metadata()
+{
+ return 0
+}
+
+# -------------------------------------------------------------------
# check if metadata server is available
#
metadata_available()
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/cloud-netconfig-1.14/gce/functions.cloud-netconfig
new/cloud-netconfig-1.15/gce/functions.cloud-netconfig
--- old/cloud-netconfig-1.14/gce/functions.cloud-netconfig 2024-02-08
10:49:19.979019815 +0100
+++ new/cloud-netconfig-1.15/gce/functions.cloud-netconfig 2025-05-14
16:19:55.129292634 +0200
@@ -73,6 +73,26 @@
}
# -------------------------------------------------------------------
+# look up IPv6 gateway information in metadata
+#
+get_ipv6_gateway_from_metadata()
+{
+ local hwaddr="$1"
+ test -z "$hwaddr" && return 1
+
+ local nics=$(get_from_metadata)
+ for idx in $nics ; do
+ local mac=$(get_from_metadata "${idx}mac")
+ debug "checking $mac"
+ if [[ $mac == $hwaddr ]]; then
+ get_from_metadata ${idx}gateway-ipv6
+ return 0
+ fi
+ done
+ return 1
+}
+
+# -------------------------------------------------------------------
# look up IP range information for interface
#
get_ipv4_ranges_from_metadata()