Comment 17 for bug 1696955

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to puppet-nova (stable/newton)

Reviewed: https://review.openstack.org/494217
Committed: https://git.openstack.org/cgit/openstack/puppet-nova/commit/?id=064799e31cb662745caf4ee93b3f36a82b1c4e33
Submitter: Jenkins
Branch: stable/newton

commit 064799e31cb662745caf4ee93b3f36a82b1c4e33
Author: Oliver Walsh <email address hidden>
Date: Wed Aug 9 15:38:49 2017 +0100

    Fix handling of nova pci MultiStrOpt params

    The changes in Ie27dbbc510c73c685b239a9be4af2700a0eb42f0 did not appear to fix
    the handling of the nova pci_* params. The config being written to nova.conf
    remains in the ListOpt format.

    As support for MultiStrOpt was added to nova_config in
    I6be7bb4cea1906bd98c513bd2d01153e4643e3ac we just need to pass an array of
    strings to nova_config to set these MultiStrOpt params.

    Nova expects the string values to be JSON encoded so that is what the parser
    function now returns. This function has also been renamed from
    'check_array_of_hash' (which it never did) to 'to_array_of_json_strings'.

    The acceptable input formats are a JSON array of objects or a puppet Array of
    Hashes. Perviously a "JSON with single quotes" format was used but should now
    be considered deprecated as it could corrupt data.

    This also removes any pci_alias entries from nova.conf when the param is not
    set.

    Change-Id: Ida3ecab717bc3113ba23553c559263f35c49c46a
    Closes-bug: #1696955
    (cherry picked from commit 1cd349f893408803fec307f615ae3fe265d54fed)
    (cherry picked from commit 13cfe18726c9ff189258871149f54caeb20b2a77)