Andre Kantek 4a816dfa6c When executing upgrade bootstrap for AIO-SX only update /etc/network/
During upgrade bootstrap, the runtime execution of the puppet class
platform::network::runtime created a lock timeout with sysinv-agent
to allow the interface configuration in the kernel. The lock exists
to allow sysinv-agent to collect interface information for the
system inventory.

The optimized upgrade feature created this runtime execution to fill
the contents in /etc/network/interface.d/ and /etc/network/routes
to be available during the network bringup phase that happens after
the system unlock in an earlier step than the regular puppet manifest
execution. But as part of apply_network_config.sh execution it also
brings up the interfaces, accessing the script protected section and
causing lock timeout.

This change uses the file /var/run/.network_upgrade_bootstrap to
indicate a upgrade bootstrap  is under way to just populate the
/etc/network files and to not activate the interfaces.

The interface activation is not needed as the bootstrap is still under
way and the minimal network configuration is already provided prior to
the bootstrap. After unlocking the files in /etc/network will provide
a faster network availability as systemd's network service is one of
the first to be executed during boot.

Test Plan:
[PASS] in 21.12 add an assorted network configuration with
       - vlan, bonded, and ethernet interfaces (the vlan interface on
         top of both base interfaces)
       - configure the bond interface with static address
       - add routes on all platform and data interfaces
[PASS] execute lock/unlock in 21.12 to verify config in applied
[PASS] execute AIO-SX upgrade to 22.12, at the bootstrap end check
        files in /etc/network/
[PASS] finish upgrade and after unlock verify the network access and
        address, interfaces, and route creation in the kernel

Closes-Bug: 2036451

Change-Id: Ib04f72298252a52a8a05cf644671106ad6530e5f
Signed-off-by: Andre Kantek <andrefernandozanella.kantek@windriver.com>
2023-09-19 18:34:53 +00:00
2019-09-09 14:52:12 -05:00
2023-04-28 12:38:53 -04:00
2021-02-19 12:14:38 -06:00
2019-09-09 14:52:12 -05:00
2023-07-20 15:45:19 +00:00
2019-09-09 14:52:12 -05:00
2019-09-09 14:52:12 -05:00
2022-12-27 01:28:45 +00:00

stx-puppet

The starlingx/stx-puppet repository handles the Puppet service1.

The Puppet service runs during bootstrap, and at every reboot, to provide a consistent configuration across the StarlingX system nodes.

This repository is not intended to be developed standalone, but rather as part of the StarlingX Source System, which is defined by the StarlingX manifest2.

References


  1. https://www.puppet.com↩︎

  2. https://opendev.org/starlingx/manifest.git↩︎

Description
StarlingX Puppet modules and manifests
Readme 20 MiB
Languages
Puppet 58.9%
Python 21.4%
HTML 7.4%
Shell 7%
Ruby 4.7%
Other 0.6%