@@ -167,24 +167,34 @@ def __init__(
167167 self ._lock_acquired = False
168168 self .read_only = read_only
169169
170+ # allow custom name for state, to be able to make test runs with real tags
171+ # without affecting production state
172+ if args .override_state_name :
173+ logger .info (
174+ f"Using custom state name instead of release tag: { args .override_state_name } "
175+ )
176+ self .state_name = args .override_state_name
177+ else :
178+ self .state_name = self .tag
179+
170180 def __enter__ (self ) -> "StateManager" :
171181 if self .read_only :
172182 return self
173183 """Acquire lock when entering context."""
174- if not self .storage .acquire_lock (self .tag ):
175- raise RuntimeError (f"Failed to acquire lock for tag: { self .tag } " )
184+ if not self .storage .acquire_lock (self .state_name ):
185+ raise RuntimeError (f"Failed to acquire lock for tag: { self .state_name } " )
176186 self ._lock_acquired = True
177- logger .info (f"Lock acquired for tag: { self .tag } " )
187+ logger .info (f"Lock acquired for tag: { self .state_name } " )
178188 return self
179189
180190 def __exit__ (self , exc_type : Any , exc_val : Any , exc_tb : Any ) -> None :
181191 if self .read_only :
182192 return
183193 """Release lock when exiting context."""
184194 if self ._lock_acquired :
185- self .storage .release_lock (self .tag )
195+ self .storage .release_lock (self .state_name )
186196 self ._lock_acquired = False
187- logger .info (f"Lock released for tag: { self .tag } " )
197+ logger .info (f"Lock released for tag: { self .state_name } " )
188198
189199 @property
190200 def state (self ) -> ReleaseState :
@@ -233,7 +243,7 @@ def apply_args(self, state: ReleaseState) -> None:
233243
234244 def load (self ) -> Optional [ReleaseState ]:
235245 """Load state from storage backend."""
236- state_data = self .storage .get (self .tag )
246+ state_data = self .storage .get (self .state_name )
237247 if state_data is None :
238248 return None
239249
@@ -250,7 +260,7 @@ def sync(self) -> None:
250260 if current_dump != self .last_dump :
251261 self .last_dump = current_dump
252262 state_dict = json .loads (current_dump )
253- self .storage .put (self .tag , state_dict )
263+ self .storage .put (self .state_name , state_dict )
254264 logger .debug ("State saved" )
255265
256266
0 commit comments