Skip to content

Commit

Permalink
Add git metadata to the package to assist in troubleshooting.
Browse files Browse the repository at this point in the history
  • Loading branch information
Dwight Hubbard committed Apr 8, 2015
1 parent 0fd00cd commit 8da079d
Show file tree
Hide file tree
Showing 3 changed files with 24 additions and 4 deletions.
16 changes: 12 additions & 4 deletions redislite/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -27,12 +27,20 @@
'package_metadata.json'
)

if os.path.exists(_metadata_file): # pragma: no cover
if os.path.exists(_metadata_file):
with open(_metadata_file) as fh:
_package_metadata = json.load(fh)
__version__ = _package_metadata['version']
else:
__version__ = '0.0.0' # pragma: no cover
__version__ = str(_package_metadata['version'])
__git_version__ = str(_package_metadata['git_version'])
__git_origin__ = str(_package_metadata['git_origin'])
__git_branch__ = str(_package_metadata['git_branch'])
__git_hash__ = str(_package_metadata['git_hash'])
else: # pragma: no cover
__version__ = str('0.0.0')
__git_version__ = str("")
__git_origin__ = str("")
__git_branch__ = str("")
__git_hash__ = str("")


__all__ = ['client', 'configuration', 'patch']
Expand Down
4 changes: 4 additions & 0 deletions setup.py
Original file line number Diff line number Diff line change
Expand Up @@ -214,6 +214,10 @@ def get_and_update_metadata():
else:
git = Git(version=setup_arguments['version'])
metadata = {
'git_version': git.version,
'git_origin': git.origin,
'git_branch': git.branch,
'git_hash': git.hash,
'version': git.version
}
with open(METADATA_FILENAME, 'w') as fh:
Expand Down
8 changes: 8 additions & 0 deletions tests/test_unit.py
Original file line number Diff line number Diff line change
Expand Up @@ -188,6 +188,14 @@ def test_redislite_db_file_cwd_kw(self):
self.assertTrue(os.path.exists(test_db))
os.remove(test_db)

def test_metadata(self):
self.assertIsInstance(redislite.__version__, str)
self.assertIsInstance(redislite.__git_version__, str)
self.assertIsInstance(redislite.__git_origin__, str)
self.assertIsInstance(redislite.__git_branch__, str)
self.assertIsInstance(redislite.__git_hash__, str)


if __name__ == '__main__':
logging.basicConfig(level=logging.DEBUG)
test_suite = unittest.TestLoader().loadTestsFromTestCase(TestRedislite)
Expand Down

0 comments on commit 8da079d

Please sign in to comment.