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 2021-09-02 23:20:30 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/cloud-netconfig (Old) and /work/SRC/openSUSE:Factory/.cloud-netconfig.new.1899 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "cloud-netconfig" Thu Sep 2 23:20:30 2021 rev:12 rq:916052 version:1.6 Changes: -------- --- /work/SRC/openSUSE:Factory/cloud-netconfig/cloud-netconfig.changes 2020-11-11 20:46:20.103643109 +0100 +++ /work/SRC/openSUSE:Factory/.cloud-netconfig.new.1899/cloud-netconfig.changes 2021-09-02 23:20:59.080603590 +0200 @@ -1,0 +2,8 @@ +Fri Aug 27 15:00:18 UTC 2021 - Joachim Gleissner <jgleiss...@suse.com> + +- Update to version 1.6: + + Ignore proxy when accessing metadata (bsc#1187939) + + Print warning in case metadata is not accessible + + Documentation update + +------------------------------------------------------------------- Old: ---- cloud-netconfig-1.5.tar.bz2 New: ---- cloud-netconfig-1.6.tar.bz2 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ cloud-netconfig.spec ++++++ --- /var/tmp/diff_new_pack.H7S4It/_old 2021-09-02 23:20:59.504604119 +0200 +++ /var/tmp/diff_new_pack.H7S4It/_new 2021-09-02 23:20:59.508604123 +0200 @@ -1,7 +1,7 @@ # -# spec file for package cloud-netconfig +# spec file # -# Copyright (c) 2020 SUSE LLC +# Copyright (c) 2021 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -37,7 +37,7 @@ %endif Name: %{base_name}%{flavor_suffix} -Version: 1.5 +Version: 1.6 Release: 0 Summary: Network configuration scripts for %{csp_string} License: GPL-3.0-or-later ++++++ cloud-netconfig-1.5.tar.bz2 -> cloud-netconfig-1.6.tar.bz2 ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/cloud-netconfig-1.5/README.html new/cloud-netconfig-1.6/README.html --- old/cloud-netconfig-1.5/README.html 1970-01-01 01:00:00.000000000 +0100 +++ new/cloud-netconfig-1.6/README.html 2021-04-20 15:03:26.582059289 +0200 @@ -0,0 +1,65 @@ +<h1>cloud-netconfig</h1> +<p><strong>cloud-netconfig</strong> is a collection of scripts for automatically configuring +network interfaces in cloud frameworks. Currently supported are Amazon EC2, +Microsoft Azure, and Google Compute Engine. It requires netconfig (package +<strong>sysconfig-netconfig</strong> on openSUSE and SUSE Linux Enterprise distributions).</p> +<h3>Installation</h3> +<p>If you are installing from source, run as root <code>make install-ec2</code>, <code>make +install-azure</code>, or <code>make install-gce</code> depending on your platform. Then reload +the udev rules by running <code>udevadm control -R</code>. Afterwards add +<strong>cloud-netconfig</strong> to the variable <strong>NETCONFIG__MODULES__ORDER</strong> in +<code>/etc/sysconfig/network/config</code> and restart networking (<code>systemctl restart +wicked.serice</code> on SUSE Linux Enterprise Server or openSUSE distributions). On +EC2 and Azure you may want to enable the systemd timer too (see below for +details on its purpose). To do that, run <code>systemctl enable --now +cloud-netconfig.timer</code>.</p> +<h3>Mode of Operation</h3> +<p><strong>cloud-netconfig</strong> handles three different tasks:</p> +<ul> +<li>Set up unconfigured interfaces</li> +</ul> +<p>For any network interface that does not have an associated configuration file +in <code>/etc/sysconfig/network</code>, a DHCP based configuration will be generated and +<code>ifup</code> will be called, which triggers interface configuration through <code>wicked</code>.</p> +<ul> +<li>Apply secondary IPv4 addresses</li> +</ul> +<p>For all interfaces managed by <strong>cloud-netconfig</strong>, it will look up secondary +IPv4 addresses from the framework's metadta server and configure them on the +interface. This does not apply to Google Compute Engine, as secondary IPv4 +addresses are not assigned directly through the framework.</p> +<ul> +<li>Create routing policies</li> +</ul> +<p>In case the system has more than one network interface, <strong>cloud-netconfig</strong> +sets up routing in a way that packets are routed through the interface +associated with the source address of the packet. To do that, it creates a +separate routing table for each interface with a default route according to the +interface configration. It also creates a routing policy to use that table for +packets using any of the interface's source addresses. This ensures that +packets are routed via the correct interface.</p> +<p>Note: DHCP servers of cloud frameworks (this applies to Microsoft Azure at the +time of writing) may not include a gateway address in DHCP leases for secondary +IPv4 addresses. This is presumably to avoid default routes to clash. To enable +full connectivity in this case, <strong>cloud-netconfig</strong> assumes the gateway host to +be the first host of the sub-network assigned to the interface.</p> +<p>Interface configurations will be checked periodically on each DHCP lease +renewal and additionally, if the systemd timer is enabled (default on Amazon +EC2 and Microsoft Azure SUSE Linux Enterprise Server images), every 60 seconds. +<strong>cloud-netconfig</strong> detects changes in the metadata configuration and updates +interface configuration and routing policies accordingly. This means that IP +addresses that were removed from the virtual interface configuration will be +removed from the interface, but only addresses that were automatically added by +<strong>cloud-netconfig</strong> will be removed. Addresses added manually by the +administrator or by another tool (e.g. high-availability software) will not be +touched.</p> +<h3>Configuration</h3> +<p><strong>cloud-netconfig</strong> does not require any configuration, but it should be noted +that it will not overwrite existing interface configurations. This allows to +use specific interface configurations. <strong>cloud-netconfig</strong> will still set up +secondary IP addresses and routing policies. If you do not want that, set the +variable <strong>CLOUD__NETCONFIG__MANAGE</strong> to <strong>no</strong> in the <code>ifcfg</code> file in +<code>/etc/sysconfig/network</code> to disable it for the associated interface. You can +also change the default value of <strong>CLOUD__NETCONFIG__MANAGE</strong> for in +<code>/etc/default/cloud-netconfig</code>. The default applies to newly created <code>ifcfg</code> +files, not for existing ones.</p> \ No newline at end of file diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/cloud-netconfig-1.5/README.md new/cloud-netconfig-1.6/README.md --- old/cloud-netconfig-1.5/README.md 2018-07-10 18:22:11.173301719 +0200 +++ new/cloud-netconfig-1.6/README.md 2021-08-11 14:01:06.647719396 +0200 @@ -2,35 +2,65 @@ =============== **cloud-netconfig** is a collection of scripts for automatically configuring -network interfaces in cloud frameworks. Currently support are Amazon EC2 and -Microsoft Azure. It requires netconfig (package **sysconfig-netconfig** on -openSUSE and SUSE Linux Enterprise distributions). +network interfaces in cloud frameworks. Currently supported are Amazon EC2, +Microsoft Azure, and Google Compute Engine. It requires netconfig (package +**sysconfig-netconfig** on openSUSE and SUSE Linux Enterprise distributions). ### Installation -If you are installing from source, run as root `make install-ec2` to install on -EC2 or `make install-azure` to install on Azure. Then reload the udev rules by -running `udevadm control -R`. Afterwards add **cloud-netconfig** to the -variable **NETCONFIG__MODULES__ORDER** in `/etc/sysconfig/network/config` and -restart networking (`systemctl restart wicked.serice` on SLE 12 or recent -openSUSE distributions). +If you are installing from source, run as root `make install-ec2`, `make +install-azure`, or `make install-gce` depending on your platform. Then reload +the udev rules by running `udevadm control -R`. Afterwards add +**cloud-netconfig** to the variable **NETCONFIG__MODULES__ORDER** in +`/etc/sysconfig/network/config` and restart networking (`systemctl restart +wicked.service` on SUSE Linux Enterprise Server or openSUSE distributions). On +EC2 and Azure you may want to enable the systemd timer too (see below for +details on its purpose). To do that, run `systemctl enable --now +cloud-netconfig.timer`. ### Mode of Operation -With **cloud-netconfig** installed and enabled, for any network interface -detected that does not have a configuration in `/etc/sysconfig/network`, a -configuration will be generated with DHCP (v4 and v6) enabled. Additionally, -for all interfaces including the primary one, **cloud-netconfig** looks up -secondary IPv4 addresses from the metadata server and configures them on the -interface, if any. Secondary IPv6 addresses are delivered via DHCP. For any -seconday interface, routing policies for each IP address will be created to -ensure packets from those get routed via the corresponding network interface. -For IPv6 addresses on the primary interface, routing policies will also be -created to ensure correct routing. +**cloud-netconfig** handles three different tasks: + +- Set up unconfigured interfaces + +For any network interface that does not have an associated configuration file +in `/etc/sysconfig/network`, a DHCP based configuration will be generated and +`ifup` will be called, which triggers interface configuration through `wicked`. + +- Apply secondary IPv4 addresses + +For all interfaces managed by **cloud-netconfig**, it will look up secondary +IPv4 addresses from the framework's metadata server and configure them on the +interface. This does not apply to Google Compute Engine, as secondary IPv4 +addresses are not assigned directly through the framework. + +- Create routing policies + +In case the system has more than one network interface, **cloud-netconfig** +sets up routing in a way that packets are routed through the interface +associated with the source address of the packet. To do that, it creates a +separate routing table for each interface with a default route according to the +interface configration. It also creates a routing policy to use that table for +packets using any of the interface's source addresses. This ensures that +packets are routed via the correct interface. + +Note: DHCP servers of cloud frameworks (this applies to Microsoft Azure at the +time of writing) may not include a gateway address in DHCP leases for secondary +IPv4 addresses. This is presumably to avoid default routes to clash. To enable +full connectivity in this case, **cloud-netconfig** assumes the gateway host to +be the first host of the sub-network assigned to the interface. Interface configurations will be checked periodically on each DHCP lease -renewal, and in case the configuration in the cloud framework changed, the -interface will be reconfigured accordingly. +renewal and additionally, if the systemd timer is enabled (default on Amazon +EC2 and Microsoft Azure SUSE Linux Enterprise Server images), every 60 seconds. +**cloud-netconfig** detects changes in the metadata configuration and updates +interface configurations and routing policies accordingly. This means that IP +addresses that were removed from the virtual interface configuration will be +removed from the interface, but only addresses that were automatically added by +**cloud-netconfig** will be removed. Addresses added manually by the +administrator or by another tool (e.g. high-availability software) will not be +touched. ### Configuration @@ -39,4 +69,7 @@ use specific interface configurations. **cloud-netconfig** will still set up secondary IP addresses and routing policies. If you do not want that, set the variable **CLOUD__NETCONFIG__MANAGE** to **no** in the `ifcfg` file in -`/etc/sysconfig/network`. +`/etc/sysconfig/network` to disable it for the associated interface. You can +also change the default value of **CLOUD__NETCONFIG__MANAGE** in +`/etc/default/cloud-netconfig`. The default applies to newly created `ifcfg` +files, not for existing ones. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/cloud-netconfig-1.5/VERSION new/cloud-netconfig-1.6/VERSION --- old/cloud-netconfig-1.5/VERSION 2020-11-04 17:33:04.660500818 +0100 +++ new/cloud-netconfig-1.6/VERSION 2021-08-27 12:26:02.523795379 +0200 @@ -1 +1 @@ -1.5 +1.6 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/cloud-netconfig-1.5/azure/functions.cloud-netconfig new/cloud-netconfig-1.6/azure/functions.cloud-netconfig --- old/cloud-netconfig-1.5/azure/functions.cloud-netconfig 2020-09-23 17:34:30.572858814 +0200 +++ new/cloud-netconfig-1.6/azure/functions.cloud-netconfig 2021-08-27 16:55:30.278959254 +0200 @@ -19,7 +19,7 @@ METADATA_BASE_URL="http://169.254.169.254/metadata/instance/network/interface/" URL_HDR="Metadata:true" URL_APX='?format=text&api-version=2017-04-02' -CURL="curl -m 3 -H $URL_HDR" +CURL="curl -m 3 --noproxy 169.254.169.254 -H $URL_HDR" # ------------------------------------------------------------------- diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/cloud-netconfig-1.5/cloud-netconfig.spec new/cloud-netconfig-1.6/cloud-netconfig.spec --- old/cloud-netconfig-1.5/cloud-netconfig.spec 2020-11-04 17:33:04.664500867 +0100 +++ new/cloud-netconfig-1.6/cloud-netconfig.spec 2021-08-27 12:26:02.523795379 +0200 @@ -36,7 +36,7 @@ %endif Name: %{base_name}%{flavor_suffix} -Version: 1.5 +Version: 1.6 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.5/common/cloud-netconfig new/cloud-netconfig-1.6/common/cloud-netconfig --- old/cloud-netconfig-1.5/common/cloud-netconfig 2020-11-04 17:33:04.664500867 +0100 +++ new/cloud-netconfig-1.6/common/cloud-netconfig 2021-08-27 15:23:21.154649724 +0200 @@ -432,15 +432,19 @@ debug "interface ${cfg##*/} is down" return fi + if ! metadata_available ; then + warn "Cannot access instance metadata, skipping interface configuration for ${cfg##*/}" + return + fi for cfg in ${1}/* ; do test -f $cfg || continue get_variable "SERVICE" "$cfg" case "$SERVICE" in "wicked-dhcp-ipv4"|"dhcpcd") - metadata_available && configure_interface_ipv4 "$cfg" + configure_interface_ipv4 "$cfg" ;; "wicked-dhcp-ipv6"|"dhcp6c") - metadata_available && configure_interface_ipv6 "$cfg" + configure_interface_ipv6 "$cfg" ;; esac done diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/cloud-netconfig-1.5/ec2/functions.cloud-netconfig new/cloud-netconfig-1.6/ec2/functions.cloud-netconfig --- old/cloud-netconfig-1.5/ec2/functions.cloud-netconfig 2019-11-26 09:42:05.428870360 +0100 +++ new/cloud-netconfig-1.6/ec2/functions.cloud-netconfig 2021-08-27 16:55:30.278959254 +0200 @@ -19,7 +19,7 @@ API_VERSION="2018-09-24" METADATA_URL_BASE="http://169.254.169.254/${API_VERSION}" METADATA_URL_IFACE="${METADATA_URL_BASE}/meta-data/network/interfaces/macs" -CURL="curl -m 3" +CURL="curl -m 3 --noproxy 169.254.169.254" TOKEN_TTL="60" declare TOKEN