Skip to content
Snippets Groups Projects
Commit f217f058 authored by Raoul Hidalgo Charman's avatar Raoul Hidalgo Charman
Browse files

utils.py: Add message digest function

Get cascache.py to use this
parent f7581026
No related branches found
No related tags found
No related merge requests found
......@@ -427,10 +427,7 @@ class CASCache():
def push_message(self, remote, message):
message_buffer = message.SerializeToString()
message_sha = hashlib.sha256(message_buffer)
message_digest = remote_execution_pb2.Digest()
message_digest.hash = message_sha.hexdigest()
message_digest.size_bytes = len(message_buffer)
message_digest = utils._message_digest(message_buffer)
remote.init()
......
......@@ -41,6 +41,7 @@ import psutil
from . import _signals
from ._exceptions import BstError, ErrorDomain
from ._protos.build.bazel.remote.execution.v2 import remote_execution_pb2
# The magic number for timestamps: 2011-11-11 11:11:11
_magic_timestamp = calendar.timegm([2011, 11, 11, 11, 11, 11])
......@@ -1242,3 +1243,19 @@ def _deduplicate(iterable, key=None):
def _get_link_mtime(path):
path_stat = os.lstat(path)
return path_stat.st_mtime
# message_digest()
#
# Args:
# message_buffer (str): String to create digest of
#
# Returns:
# (remote_execution_pb2.Digest): Content digest
#
def _message_digest(message_buffer):
sha = hashlib.sha256(message_buffer)
digest = remote_execution_pb2.Digest()
digest.hash = sha.hexdigest()
digest.size_bytes = len(message_buffer)
return digest
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment