Fix Revision Resource print out in Deckhand client

This fixes the Revision Resource class in the Deckhand client
incorrectly printing out revision documents as <Revision ID: {ID}>
instead of <Document [{schema}]: {name}>

Change-Id: I31024dda5803dbf35a23f9fb7bc224e0ca7d8ba2
This commit is contained in:
Felipe Monteiro 2018-03-03 11:46:36 -05:00 committed by Anthony Lin
parent a29741e3a7
commit bf70a81ffa
1 changed files with 12 additions and 6 deletions

View File

@ -18,14 +18,20 @@ from deckhand.client import base
class Revision(base.Resource):
def __repr__(self):
if hasattr(self, 'results'):
# List revision documents.
if hasattr(self, 'metadata') and hasattr(self, 'schema'):
return "<Document [%s] %s>" % (self.schema, self.metadata['name'])
# List revisions.
elif hasattr(self, 'results'):
return ', '.join(
["<Revision ID: %s>" % r['id'] for r in self.results])
["<Revision ID: %s>" % x['id'] for x in self.results])
# Show revision.
elif hasattr(self, 'id'):
return "<Revision ID: %s>" % base.getid(self)
# All options expired. Revision diff.
else:
try:
return ("<Revision ID: %s>" % base.getid(self))
except Exception:
return ("<Revision Diff>")
return "<Revision Diff: %s>" % ', '.join(
x for x in self.to_dict())
class RevisionManager(base.Manager):