Skip to content

Commit 131f4e7

Browse files
committed
Refactor KubernetesLock timing code
1 parent 6c24213 commit 131f4e7

File tree

1 file changed

+9
-6
lines changed

1 file changed

+9
-6
lines changed

sherlock/lock.py

Lines changed: 9 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -567,7 +567,7 @@ def _release(self):
567567
raise LockException("Lock was not set by this process.")
568568

569569
try:
570-
self.client.delete(self._key_name, prevValue=str(self._owner))
570+
self.client.delete(self._key_name, prevValue=self._owner)
571571
self._owner = None
572572
except ValueError:
573573
raise LockException(
@@ -804,10 +804,7 @@ def _key_name(self):
804804
key = self.lock_name
805805
return key
806806

807-
def _has_expired(
808-
self, lease: kubernetes.client.V1Lease, now: datetime.datetime
809-
) -> bool:
810-
# Determine whether the Lease has expired.
807+
def _expiry_time(self, lease: kubernetes.client.V1Lease) -> datetime.datetime:
811808
expiry_time = datetime.datetime.min
812809
if (
813810
lease.spec.renew_time is not None
@@ -818,7 +815,13 @@ def _has_expired(
818815
)
819816
elif lease.spec.lease_duration_seconds is None:
820817
expiry_time = datetime.datetime.max
821-
return now > expiry_time.astimezone(tz=datetime.timezone.utc)
818+
return expiry_time.astimezone(tz=datetime.timezone.utc)
819+
820+
def _has_expired(
821+
self, lease: kubernetes.client.V1Lease, now: datetime.datetime
822+
) -> bool:
823+
# Determine whether the Lease has expired.
824+
return now > self._expiry_time(lease)
822825

823826
def _create_lease(
824827
self,

0 commit comments

Comments
 (0)