Puppet catalog compilation and regression tests for the DATA layer

Registered by Bogdan Dobrelya

This logically extends https://blueprints.launchpad.net/fuel/+spec/deployment-dryrun
There are multiple deployment tasks (modular manifests) containing tons of parameters.
With the puppet modules evolving, this data deployment layer must be smoothly evolved as well.

In order to achieve that, there must be a way to examine a patch against the "trusted state", which is data for the composition manifests in the fuel-library. Ideally, each change to a class/resource parameters must be checked against that trusted state.
If there were changes, the test shall fail unless the changes "confirmed" to be looking good by a reviewer/developer.

Blueprint information

Bogdan Dobrelya
Bogdan Dobrelya
Needs approval
Dmitry Ilyin
Series goal:
Accepted for mitaka
Milestone target:
milestone icon 9.0
Started by
Bogdan Dobrelya
Completed by
Bogdan Dobrelya

Related branches



Addressed by: https://review.openstack.org/240015

Gerrit topic: https://review.openstack.org/#q,topic:noop_tests,n,z

Addressed by: https://review.openstack.org/240901
    Add data layer checks how-to to the README

Gerrit topic: https://review.openstack.org/#q,topic:bp/deployment-data-dryrun,n,z

Addressed by: https://review.openstack.org/247445
    Sanitize hiera_structure use in Noop tests

Gerrit topic: https://review.openstack.org/#q,topic:deployment-data-dryrun,n,z

Addressed by: https://review.openstack.org/260563
    Prepare noop tests for external fixtures

Addressed by: https://review.openstack.org/272480
    Remove astute.yaml and use them as fixtures

Gerrit topic: https://review.openstack.org/#q,topic:external_noop_tests,n,z

Addressed by: https://review.openstack.org/276816
    Switch to external noop tests

Addressed by: https://review.openstack.org/281886
    Update README and .gitignore

Addressed by: https://review.openstack.org/281948
    Fix noop tests run settings

CI gate

Addressed by: https://review.openstack.org/287283
    Update Noop fixtures README


Work Items

Work items:
Update existing Noop framework to be able to run data layer checks: DONE
Update how-to docs and initiate ML to openstack-dev: DONE
Optimize Noop tests execution time to use multiple rake spec workers: DONE
Create a separate fuel-noop-fixtures repo for noop fixtures: DONE
Create a CI gate for fuel-noop-fixtures to run the noop tests for patches against fuel-library master: DONE
Clone astute.yaml templates from the fuel-library repo to the fuel-noop-fixtures and prepare to pull them by rake spec_prep using .fixtures.yml: DONE
Switch to the external fixtures after the 8.0 SCF (stable branch): DONE
Move the fuel noop framework to he external fixtures repo: DONE
Update the noop framework docs: DONE
Work with developers to adapt the framework for daily basis: TODO

Dependency tree

* Blueprints in grey have been implemented.

This blueprint contains Public information 
Everyone can see this information.