deckhand/deckhand
Felipe Monteiro 5c411dd05b Fix: Document should not layer with parent if no layering actions
Currently, if a document has a parent but no layering actions,
the document immediately inherents its parents' data, which is a
bug. Instead, the child document should only layer with its
parent's data and then update its own data if it has at least
one layering action.

In addition, the base_schema.yaml under `deckhand.schemas`
has been updated to require that actions be required and
contain at least 1 layering action when parentSelector
is provided and that parentSelector be required when
actions is provided and that at least one key-value
pair be provided. (Empty actions array or empty
parentSelector object is meaningless and should be
disallowed/discouraged.)

This means that actions and parentSelector must always
both be provided (though providing neither is also
legal because layering is optional).

Unit tests have been added to verify the schema updates.

Change-Id: I77d54e2b216efc54b466f94d82ee8d36ca169c26
2018-03-15 12:27:31 -04:00
..
barbican Fix: Inject secret payload rather than reference into document 2018-02-26 10:17:50 -05:00
client Fix Revision Resource print out in Deckhand client 2018-03-13 22:31:38 -04:00
conf Fix condition for checking whether substitution is secret 2018-03-14 21:51:28 +00:00
control [TrivialFix] Fix AttributeError thrown in revision_documents 2018-02-28 09:48:51 +00:00
db ValidationPolicy integration with Validations API 2018-03-12 12:41:06 -04:00
engine Fix: Document should not layer with parent if no layering actions 2018-03-15 12:27:31 -04:00
policies Rename Deckhand bucket endpoint to buckets for consistency 2017-10-27 19:21:03 +01:00
tests Fix: Document should not layer with parent if no layering actions 2018-03-15 12:27:31 -04:00
__init__.py Oslo config integration (#1) 2017-06-26 16:57:50 -07:00
cmd.py Integrate Deckhand with keystone auth 2017-10-16 19:54:46 +01:00
context.py Integrate Deckhand with keystone auth 2017-10-16 19:54:46 +01:00
errors.py Security fix: Remove document data printout from exception message 2018-03-12 20:42:31 +00:00
factories.py Fix: Document should not layer with parent if no layering actions 2018-03-15 12:27:31 -04:00
policy.py DECKHAND-66: Document substitution implementation 2017-10-13 15:16:27 -04:00
service.py [Trivial Fix] Make profile directory if it doesn't exist 2018-02-15 23:35:09 -05:00
types.py Add functional tests for "owned" documents 2017-12-23 02:25:29 +00:00
utils.py [TrivialFix] Correct regex used in jsonpath_replace 2018-02-28 22:20:48 +00:00