Commit Graph

11 Commits

Author SHA1 Message Date
Shrikumar Sharma f31cd0b255 Copying the package_checksums file to
<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
2022-06-13 13:55:22 -04:00
Shrikumar Sharma b4599522c1 Remote subcloud install failure in post-install script
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
2022-05-31 10:15:48 -04:00
Shrikumar Sharma 06626151de Install package_checksums in /usr/local/share/pkg-list
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>
2022-05-19 22:29:55 -04:00
Bin Qian 62b4c3aa1c relocate /www to /var/www
Relocate writable /www to /var/www

Passed TCs:
1. provisioned DC system, std system controller + SX subcloud
2. Provision AIO-DX, standard load w/ compute and storage nodes
3. DC Upgrade, AIO-SX subclouds
4. reinstall controller
5. backup restore

Story: 2009101
Task: 43474
Change-Id: I0fd5cd4b57655325139f7c06bd44e42d06390ab7
Signed-off-by: Bin Qian <bin.qian@windriver.com>
2021-12-10 16:41:42 -05:00
Don Penney 84c720f456 Drop copy of .cfg files from controller kickstarts
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>
2020-04-27 22:50:10 -04:00
Saul Wold 8d1695fa6a Convert BOOTIF MAC to NIC name
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>
2020-04-03 09:56:41 -07:00
Don Penney 041049063e Update pxeboot kickstart to allow for hybrid install
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>
2020-02-12 11:58:24 -05:00
Joseph Richard 9e388d3bc3 Set IPV6_AUTOCONF=no on initial onboot devices
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>
2019-10-15 17:35:46 -04:00
Tao Liu 5a44b5be49 Configurable Host HTTP/HTTPS Port Binding
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>
2019-02-06 16:04:07 -06:00
Don Penney 6086b545fd Fix dir creation for downloading patches from pxeboot server
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>
2018-06-27 15:51:59 -04:00
Dean Troyer 18922761a6 StarlingX open source release updates
Signed-off-by: Dean Troyer <dtroyer@gmail.com>
2018-05-31 07:36:43 -07:00