Init storage at class level of BaseScript instead of in findsource function (#20575)

This commit is contained in:
bctiemann 2025-10-15 14:09:22 -04:00 committed by GitHub
parent 2ae98f0353
commit 9cb2c78e34
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -329,6 +329,9 @@ class BaseScript:
# Declare the placeholder for the current request
self.request = None
# Initiate the storage backend (local, S3, etc) as a class attr
self.storage = storages.create_storage(storages.backends["scripts"])
# Compile test methods and initialize results skeleton
for method in dir(self):
if method.startswith('test_') and callable(getattr(self, method)):
@ -394,8 +397,7 @@ class BaseScript:
return inspect.getfile(self.__class__)
def findsource(self, object):
storage = storages.create_storage(storages.backends["scripts"])
with storage.open(os.path.basename(self.filename), 'r') as f:
with self.storage.open(os.path.basename(self.filename), 'r') as f:
data = f.read()
# Break the source code into lines