<platform_release>_packages_list.txt
The prestaging operation on the system controller requires the list
of packages and their checksums in a file named
"<platform_release>_packages_list.txt", where <software_version> is
the version of the system controller (i.e. the new version which the
subclouds are being upgraded to).
The list of packages and their checksums is obtained from different
sources as a file named "package_checksums". This file should be
copied to /usr/local/share/pkg-list as
<platform_release>_packages_list.txt. It is currently copied as
package_checksums.
This fix copies the file "package_checksums" to
/usr/local/share/pkg-list as <platform_release>_packages_list.txt.
Test Plan:
PASS: Verify that package_checksums is copied to
/usr/local/share/pkg-list as <platform_release>_packages_list.txt
when upgrading the system controller to a higher version.
PASS: Verify that package_checksums is copied to
/usr/local/share/pkg-list as <platform_release>_packages_list.txt
when installing a controller over pxeboot
PASS: Verify that package_checksums is copied to
/usr/local/share/pkg-list as <platform_release>_packages_list.txt
when adding a subcloud from the system controller (using dcmanager
add)
PASS: Verify that package_checksums is copied to
/usr/local/share/pkg-list as <platform_release>_packages_list.txt
when installing a system controller in virtualbox from
bootimage.iso.
Closes-Bug: 1978420
Signed-off-by: Shrikumar Sharma <shrikumar.sharma@windriver.com>
Change-Id: I6270a7c9169718b2096a83135eeadb634d37b76b
When the kickstart tries to download packages_list from the
system controller, wget fails because the parameter to its
"-O" argument needs the full file path (including the file
name) as opposed to the full path to the directory that the
file resides in.
The argument has been fixed to use the full path name of the
file.
Test Plan:
PASS: Verify that the remote subcloud successfully downloads the
file and installation passes.
Closes-Bug: 1976384
Signed-off-by: Shrikumar Sharma <shrikumar.sharma@windriver.com>
Change-Id: I65b6bd66e62e7353e33f2694ca5bf99d413df836
In order to prepare shared software packages on the system
controller for subcloud prestaging, the file
"package-checksums" containing a list of packages and
their checksums, must be copied to /usr/local/share/pkg-list
and renamed as packages_list.
The prestaging process needs the package-and-checksum list
for the version of the load on the controller and the version
of the load on the subcloud.
This file needs to be copied over to /var/www/pages/feed/rel-<id>
on the controller so that the subclouds can download it.
This file can be obtained by downloading from the system
controller. If the system is being installed directly from
a boot iso, the appropriate kickstart is called to install
the file from the mounted bootimage.iso.
There are a few cases which determine how to get the file.
Cases:
1. Install load directly from bootimage.iso (both controller and
subcloud) - copy from mounted iso to location. The iso
may be present on a peripheral device like a CD/DVD.
2. Install load over lan - download the file from server and copy
to locations (all controllers)
3. Version upgrade by importing a new load - copy the file
to the appropriate location on the system controller.
The subcloud will download the package_checksums belonging
to the imported load as part of the upgrade process.
Test Plan:
PASS: Verify that the file is copied over to /usr/local/share/
pkg-list and /var/www/feed/rel-<rel-id>/ when installing
System Controller or subcloud from bootimage.iso
PASS: Verify that the file is copied to the locations when
installing controller-1 via pxeboot
PASS: Verify that the file is copied to the locations when upgrading
the System Controller (using load-import)
PASS: Verify that the file is copied when adding a subcloud with
dcmanager subcloud add
Depends On: https://review.opendev.org/c/starlingx/distcloud/+/841828
Story: 2009799
Task: 45376
Change-Id: If14b197999f2ae03e15fdc08ec27511ca1d41767
Signed-off-by: Shrikumar Sharma <shrikumar.sharma@windriver.com>
In a boot from an ISO modified by update-iso.sh with a ks-addon, the
ks-addon.cfg was being unnecessarily copied in a kickstart postinstall
scriptlet. This behaviour, copying the .cfg files, was originally
required for copying the net-boot kickstarts for installation of other
nodes, however the kickstarts are now packaged and installed, and no
other .cfg files are required from the installation.
As such, this update drops the copying of these files.
Change-Id: Id088ff00711b0703299f822ab1f25901e94a6d4d
Closes-Bug: 1875464
Signed-off-by: Don Penney <don.penney@windriver.com>
When booting via PXE one can set the ksdevice=bootif and add
'IPAPPEND 2' to the PXE boot config, this will set the MAC
address in the BOOTIF kernel cmdline which can then be used to
determine the NIC name to be used for the installation.
Tested with both valid and invalid input to BOOTIF=
Story: 2007486
Task: 39205
Change-Id: Iec1e8215571a6bb8fb79a461ce9210dddf2c764f
Signed-off-by: Saul Wold <sgw@linux.intel.com>
The generated pxeboot kickstart templates that are included in the
installation ISO will be used by the gen-bootloader-iso.sh in setting
up a hybrid ISO/network installation, where the kernel and initrd are
loaded from ISO, but the rootfs, kickstart, and software repositories
are accessed via http/https. In order to support this installation,
the pxeboot kickstart is updated to allow for the case where the
BOOTIF cmdline parameter is not set (ie. node booted from ISO rather
than network).
This update also adds a check to the pxeboot kickstart to mount the
installation media if in this scenario. In the case where a controller
has been booted from an ISO with installation media accessed from the
network, dracut does not mount the ISO. This results in the 'reboot
--eject' in the kickstart being ignored, and when the newly installed
node is rebooted, it may just boot the ISO again. By mounting the
media in this case, Anaconda will eject it as expected.
Story: 2006980
Task: 38466
Change-Id: I9330a2d50b8966a2b3f2b59cabec20f084372d8c
Signed-off-by: Don Penney <don.penney@windriver.com>
This commit sets IPV6_AUTOCONF=no from the anaconda installer for
all interfaces that are enabled during the initial install.
Once the puppet manifest is applied, and it updates the networking
config scripts for the system, this will be overwritten by that config,
which disables it for all configured interfaces,
IPv6 auto-configuration is causing an issue during backup and restore,
where router advertisements are causing the default route to be deleted,
which causes the calico pod to fail to initialize.
Closes-bug: 1845707
Change-Id: I519ad0d92c66a636df0d10e79c6962296683520d
Signed-off-by: Joseph Richard <joseph.richard@windriver.com>
Update pxeboot-update script to accept parameter for
installer base URL
Add a common function to parse the port number from
inst.repo
Update pxeboot and kickstart URLs to support a configurable
HTTP port
Story: 2004642
Task: 28593
Depends-On: https://review.openstack.org/#/c/634237/
Change-Id: Ibd66e89e49794ca57b938eb43d227860eda6674a
Signed-off-by: Tao Liu <tao.liu@windriver.com>
When the pxeboot setup feature is used from a patched ISO, the patch
repo is downloaded from the pxeboot server during installation.
The kickstart was missing a change in working directory when mirroring
the patch repo, leading to issues when installing the second controller.
This update corrects this issue.
Change-Id: I5926ee4f196adf3938b8934f57c15eadde83a5fb
Signed-off-by: Don Penney <don.penney@windriver.com>