Merge YAML settings resource is non-idempotent

Bug #1614279 reported by Dmitry Ilyin
10
This bug affects 2 people
Affects Status Importance Assigned to Milestone
Fuel for OpenStack
Fix Released
High
Dmitry Ilyin

Bug Description

There is a resource for merging YAML configuration in the "fuel" module. In the fuel-library it's being used to merge the config file for the Cobbler service on the master node and it's working fine as it is.

But some plugin developers have started using this resource too. Practice have shown that there are a lot of problems with idempotency when several instances are trying to modify the same file and there are problems with arrays being incorrectly merged and there is no options to control this behavior.

Dmitry Ilyin (idv1985)
Changed in fuel:
milestone: none → 9.1
assignee: nobody → Dmitry Ilyin (idv1985)
importance: Undecided → High
status: New → Confirmed
tags: added: customer-found
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Related fix merged to fuel-library (stable/mitaka)

Reviewed: https://review.openstack.org/355040
Committed: https://git.openstack.org/cgit/openstack/fuel-library/commit/?id=49d918fc01c768a8523f33b5f0cd38ff6cc5da95
Submitter: Jenkins
Branch: stable/mitaka

commit 49d918fc01c768a8523f33b5f0cd38ff6cc5da95
Author: Dmitry Ilyin <email address hidden>
Date: Fri Aug 12 13:58:18 2016 -0500

    Add refactored merge_yaml_settings module

    Replace the merge_yaml_settings resource with the
    merge_yaml module. This module introduced more advanced
    version of the merge_yaml_settings resource with
    additional options to control the merging behavior.

    There are also resources with alternative implementation
    of a configuration merging types and providers. They
    are working in the same way as the "concat" module does
    by assembling the resulting data structure from a set of
    fragments. This should be much more puppet-master frinedly.
    These types are not used anywhere yet but may be used later.

    Related-Bug: 1614279
    Cherry-picked-from: 9eccbbc
    Change-Id: Ieaa8fc840f6a91a8d10e0670bd60d07692e2cb7d

tags: added: in-stable-mitaka
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Related fix merged to fuel-library (master)

Reviewed: https://review.openstack.org/354942
Committed: https://git.openstack.org/cgit/openstack/fuel-library/commit/?id=c4086622897bea2e7113835a7a07687394eba8ed
Submitter: Jenkins
Branch: master

commit c4086622897bea2e7113835a7a07687394eba8ed
Author: Dmitry Ilyin <email address hidden>
Date: Fri Aug 12 13:58:18 2016 -0500

    Add refactored merge_yaml_settings module

    Replace the merge_yaml_settings resource with the
    merge_yaml module. This module introduced more advanced
    version of the merge_yaml_settings resource with
    additional options to control the merging behavior.

    There are also resources with alternative implementation
    of a configuration merging types and providers. They
    are working in the same way as the "concat" module does
    by assembling the resulting data structure from a set of
    fragments. This should be much more puppet-master frinedly.
    These types are not used anywhere yet but may be used later.

    Related-Bug: 1614279
    Change-Id: Ieaa8fc840f6a91a8d10e0670bd60d07692e2cb7d

Dmitry Ilyin (idv1985)
Changed in fuel:
status: Confirmed → Fix Committed
tags: added: on-verification
Revision history for this message
Andrey Lavrentyev (alavrentyev) wrote :

Verified on 9.1 snapshot #299

[root@nailgun ~]# shotgun2 short-report
cat /etc/fuel_build_id:
 495
cat /etc/fuel_build_number:
 495
cat /etc/fuel_release:
 9.0
cat /etc/fuel_openstack_version:
 mitaka-9.0

UBUNTU_MIRROR_ID=ubuntu-2016-09-14-213640
CENTOS_MIRROR_ID=centos-7.2.1511-2016-05-31-083834
MOS_UBUNTU_MIRROR_ID=9.0-2016-09-22-142322
MOS_CENTOS_OS_MIRROR_ID=os-2016-06-23-135731
MOS_CENTOS_PROPOSED_MIRROR_ID=proposed-2016-09-22-152322
MOS_CENTOS_UPDATES_MIRROR_ID=updates-2016-06-23-135916
MOS_CENTOS_HOLDBACK_MIRROR_ID=holdback-2016-06-23-140047
MOS_CENTOS_HOTFIX_MIRROR_ID=hotfix-2016-09-16-084322
MOS_CENTOS_SECURITY_MIRROR_ID=security-2016-06-23-140002

tags: removed: on-verification
Changed in fuel:
status: Fix Committed → Fix Released
tags: added: release-notes
tags: added: release-notes-done
removed: release-notes
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.