Comment 5 for bug 1837097

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to ansible-playbooks (master)

Reviewed: https://review.opendev.org/672801
Committed: https://git.openstack.org/cgit/starlingx/ansible-playbooks/commit/?id=e5178771888bd5a13c0c50dd7cd9fd960d52163d
Submitter: Zuul
Branch: master

commit e5178771888bd5a13c0c50dd7cd9fd960d52163d
Author: John Kung <email address hidden>
Date: Thu Jul 25 10:35:22 2019 -0400

    Create host state for determing initial inventory complete

    Add host inv_state attribute to allow determination of when the
    initial inventory collection has been completed.

    Update references which were using disks/pvs as proxy for inventory
    completion to reference the host inv_state attribute.

    Description of issue (from Bug 1837097):
    The system inventory agent needs to explicitly indicate that inventory
    collection has finished for each host. The current method for
    determining whether a host has been inventoried successfully is to
    wait for the disk/pv list to be non-empty.

    That worked well until recently when the host file system feature
    was merged. The system inventory agent now collects/creates host file
    systems after the disk list is populated so a provisioning system
    waiting on the disk list will move ahead to unlock the node
    prematurely before the host file systems have been created and reported
    to system inventory. This can lead to undefined behavior either on
    the system being provisioned or the provisioning system that is
    configuring the target system.

    If we do not fix this properly with an explicit/deterministic flag then
    we will trip over this issue each time someone adds a new inventory
    collection step to the end of the system inventory agent's
    initial process loop.

    Change-Id: Ibe590055a3e2c6b312a92c1afc445f7c14d87e2f
    Closes-bug: 1837097
    Depends-On: https://review.opendev.org/#/c/672772/
    Signed-off-by: John Kung <email address hidden>