Skip to content

Commit 2e8e632

Browse files
authored
Fix incorrect setting of archive_state for newly created testcases. (#4173)
1 parent 7691c8e commit 2e8e632

File tree

2 files changed

+8
-7
lines changed

2 files changed

+8
-7
lines changed

src/clusterfuzz/_internal/bot/tasks/utasks/fuzz_task.py

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -235,12 +235,13 @@ def __init__(self,
235235
self.fuzzed_key = None
236236
self.absolute_path = None
237237
self.archive_filename = None
238+
self.archived = False
238239

239240
@property
240241
def filename(self):
241242
return os.path.basename(self.file_path)
242243

243-
def is_archived(self):
244+
def is_uploaded(self):
244245
"""Return true if archive_testcase_in_blobstore(..) was performed."""
245246
return self.fuzzed_key is not None
246247

@@ -249,14 +250,14 @@ def archive_testcase_in_blobstore(self,
249250
"""Calling setup.archive_testcase_and_dependencies_in_gcs(..)
250251
and hydrate certain attributes. We single out this method because it's
251252
expensive and we want to do it at the very last minute."""
252-
if self.is_archived():
253+
if self.is_uploaded():
253254
return
254255

255256
if upload_url.key:
256257
# TODO(metzman): Figure out if we need this check and if we can get rid of
257258
# the archived return value.
258259
self.fuzzed_key = upload_url.key
259-
(_, self.absolute_path, self.archive_filename) = (
260+
self.archived, self.absolute_path, self.archive_filename = (
260261
setup.archive_testcase_and_dependencies_in_gcs(
261262
self.resource_list, self.file_path, upload_url.url))
262263

@@ -275,7 +276,7 @@ def get_error(self):
275276
(self.crash_state, self.unsymbolized_crash_stacktrace,
276277
self.crash_stacktrace))
277278

278-
if self.is_archived() and not self.fuzzed_key:
279+
if self.is_uploaded() and not self.fuzzed_key:
279280
return f'Unable to store testcase in blobstore: {self.crash_state}'
280281

281282
if not self.crash_state or not self.crash_type:
@@ -914,7 +915,7 @@ def create_testcase(group: uworker_msg_pb2.FuzzTaskCrashGroup,
914915
fuzzer_name=uworker_input.fuzzer_name,
915916
fully_qualified_fuzzer_name=fully_qualified_fuzzer_name,
916917
job_type=uworker_input.job_type,
917-
archived=bool(crash.fuzzed_key),
918+
archived=crash.archived,
918919
archive_filename=crash.archive_filename,
919920
http_flag=crash.http_flag,
920921
gestures=list(crash.gestures),

src/clusterfuzz/_internal/tests/core/bot/tasks/utasks/fuzz_task_test.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -396,14 +396,14 @@ def test_hydrate_fuzzed_key(self):
396396
"""Test hydrating fuzzed_key."""
397397
crash = self._test_crash(should_be_ignored=False, security_flag=True)
398398

399-
self.assertFalse(crash.is_archived())
399+
self.assertFalse(crash.is_uploaded())
400400
self.assertIsNone(crash.get_error())
401401
self.assertTrue(crash.is_valid())
402402

403403
fuzzed_key = 'fuzzed_key'
404404
crash.archive_testcase_in_blobstore(
405405
uworker_msg_pb2.BlobUploadUrl(key=fuzzed_key))
406-
self.assertTrue(crash.is_archived())
406+
self.assertTrue(crash.is_uploaded())
407407
self.assertIsNone(crash.get_error())
408408
self.assertTrue(crash.is_valid())
409409

0 commit comments

Comments
 (0)