deckhand/deckhand/tests/unit
Phil Sphicas 4ccb4368ce Barbican driver simplification
Under some circumstances, the payloads retrieved from Barbican do not
match what was stored. This primarily affects surrounding whitespace[0],
but the implications for passphrases are significant, and even for PEM
encoded data, a difference in whitespace in a configmap is enough to
trigger a chart upgrade.

In general, the effort to align Deckhand document types with Barbican
secret types adds complexity without tangible benefit. Barbican does no
enforcement of the contents of the data, and if it did, that could lead
to further incompatibilities.

This change uses the 'opaque' secret type for all secret document types.
Before storage (or caching), the payload is serialized using `repr`, and
base64 encoded. Upon retrieval, the payload is base64 decoded and parsed
back into an object with `ast.literal_eval`.

[0]: https://storyboard.openstack.org/#!/story/2007017

Change-Id: I9c2f3427f52a87aad718f95160cf688db35e1b83
2020-01-24 22:26:29 +00:00
..
barbican Implement Barbican cache for quick secret payload/ref data 2018-08-22 16:16:26 +01:00
common Redact rendered Documents 2018-10-24 22:42:25 -04:00
control Fix encrypted doc rendering 2019-10-04 16:33:46 +00:00
db Revision diffing issue with revision rollback. 2018-11-21 11:32:16 -06:00
engine Barbican driver simplification 2020-01-24 22:26:29 +00:00
resources Simplify schema validation 2018-07-03 02:07:33 +00:00
views Validate bucket diffing works with revision rollback 2018-10-18 19:07:42 +01:00
__init__.py Initial engine framework 2017-07-17 20:46:49 +01:00
base.py Validate bucket diffing works with revision rollback 2018-10-18 19:07:42 +01:00
fake_policy.py DECKHAND-66: Document substitution implementation 2017-10-13 15:16:27 -04:00
fixtures.py Redacts Raw Documents 2018-10-19 23:56:12 -05:00
test_policy.py [TrivialFix] Fix incorrect copyright 2017-12-05 21:16:48 +00:00