Debian: kickstart incorrectly updates platform.conf:http_port on controller-0 install

Bug #1980381 reported by Eric MacDonald
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
StarlingX
Fix Released
Low
Eric MacDonald

Bug Description

The Debian unified kickstart, for controller-0 install from external pxeboot server, is trying to extract an http port number from the $insturl install variable. However, since the wrcp controller-0 install grub menus don't include (and never have) an http port in the specified url we see that the platform.conf:http_port value is updated incorrectly.

The CentOS kickstart simply defaults the port to 8080 for the initial controller-0 install case.

Severity
--------
Minor: The incorrect value is never used and replaced with the correct value during the configuration cycle over the unlock.

Steps to Reproduce
------------------
pxeboot install controller-0 from external pxeboot server without http port specified (normal).

Expected Behavior
-----------------
http_port in platform.conf should default to 8080

Actual Behavior
---------------
http_port in platform.conf is set to the <insturl=....> env output value

Reproducibility
---------------
100% reproducible

System Configuration
--------------------
Any controller-0 install

Load info
---------
Any prior to 2022-06-30

Last Pass
---------
Never observed as it has no real impact therefore no test case verifying it at time its incorrect.

Workaround
----------
Not required. Issue has no product impact.
Any controller-0 install

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to metal (master)

Fix proposed to branch: master
Review: https://review.opendev.org/c/starlingx/metal/+/849383

Changed in starlingx:
status: New → In Progress
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to metal (master)

Reviewed: https://review.opendev.org/c/starlingx/metal/+/849383
Committed: https://opendev.org/starlingx/metal/commit/081e7fdd6a2f559bf94d46379391fa758b344d43
Submitter: "Zuul (22348)"
Branch: master

commit 081e7fdd6a2f559bf94d46379391fa758b344d43
Author: Eric MacDonald <email address hidden>
Date: Mon Jul 11 12:54:55 2022 +0000

    Debian: Get http port from insturl for system node installs only

    The Debian kickstart is not defaulting the http_port to 8080
    in /etc/platform/platform.conf when no port is specified in
    the insturl environment variable. This is seen to occur on
    initial controller-0 install because the http port is typically
    not specified on the command line in that case.

    The CentOS kickstart only ever tried to parse the http port value
    from the command line for 'system node' installs.
    See stx/metal/bsp-files/kickstarts/post_net_common.cfg

    With the unified kickstart, in Debian, an extra check needs to
    be added to only parse the insturl string for the http port
    for 'system node' installs.

    This update will continue to default the http port to 8080 unless
    its a 'system node' install which is identified by 'pxecontroller'
    in the insturl environment variable. In which case the http port
    should be present and will be extracted and added to platform.conf
    as done in CentOS.

    Test Plan:

    PASS: Debian build and install
    PASS: Verify platform.conf:http_port defaults to 8080 for
          controller-0 pxeboot or USB install cases.
    PASS: Verify platform.conf:http_port is updated with port number
          specified in insturl for the 'system node' install case.

    Closes-Bug: 1980381
    Change-Id: Ibfa30a45fcf435eebb183d12c2380e06074fd157

Changed in starlingx:
status: In Progress → Fix Released
Ghada Khalil (gkhalil)
tags: added: stx.7.0 stx.debian stx.metal
Changed in starlingx:
importance: Undecided → Low
assignee: nobody → Eric MacDonald (rocksolidmtce)
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.