6f86088a9a
This patchset fixes an edge case with respect to updating substitution sources after a document has been rendered vis-a-vis replacement. Substitution sources only use schema/name which doesn't uniquely identify replacement documents. Thus, an additional check is required in `update_substitution_sources` to ensure that the parent-replacement document doesn't overwrite data for the child-replacement document. Note that Deckhand prioritizes the child-replacement to be rendered immediately after the parent-replacement document, meaning that the child-replacement document will be the one who correctly updates the substitution sources (which don't include parent-replacement documents). Afterward, all other documents that reference the parent-replacement should get the correct data. Unit and functional tests have been added for a multi-layer replacement scenario which regression-test the bug. Change-Id: Ie6d921d98b7aa87e35a7aa5256cc7da2c0a256b0 |
||
---|---|---|
.. | ||
schemas | ||
__init__.py | ||
document_validation.py | ||
layering.py | ||
secrets_manager.py | ||
utils.py |