Closed Bug 1542500 Opened 5 years ago Closed 5 years ago

Android nightly beetmover scriptworker.client - ERROR - Failed to run async_main

Categories

(Release Engineering :: General, defect)

defect
Not set
normal

Tracking

(firefox68+ fixed)

RESOLVED FIXED
Tracking Status
firefox68 + fixed

People

(Reporter: apavel, Assigned: sfraser)

References

Details

Treeherder link: https://treeherder.mozilla.org/#/jobs?repo=mozilla-central&resultStatus=testfailed%2Cbusted%2Cexception&fromchange=45808ab18609bfd3b69c6ae2d21e2b50f5177a02&selectedJob=238571149

Failure log: https://taskcluster-artifacts.net/EnOU4COWSIqfErGLUbMPAA/0/public/logs/live_backing.log

2019-04-06 12:11:25,494 - scriptworker.client - ERROR - Failed to run async_main
Traceback (most recent call last):
File "/builds/scriptworker/lib/python3.6/site-packages/scriptworker/client.py", line 204, in _handle_asyncio_loop
await async_main(context)
File "/builds/scriptworker/lib/python3.6/site-packages/beetmoverscript/script.py", line 308, in async_main
await action_mapcontext.action
File "/builds/scriptworker/lib/python3.6/site-packages/beetmoverscript/script.py", line 77, in push_to_nightly
await move_beets(context, context.artifacts_to_beetmove, artifact_map=context.task['payload']['artifactMap'])
File "/builds/scriptworker/lib/python3.6/site-packages/beetmoverscript/script.py", line 347, in move_beets
source, installer_path, context, locale, manifest=manifest, artifact_map=artifact_map))
File "/builds/scriptworker/lib/python3.6/site-packages/beetmoverscript/task.py", line 201, in get_updated_buildhub_artifact
cfg = utils.extract_file_config_from_artifact_map(artifact_map, installer_name, task_id, locale)
File "/builds/scriptworker/lib/python3.6/site-packages/beetmoverscript/utils.py", line 343, in extract_file_config_from_artifact_map
raise TaskVerificationError('No artifact map entry for {}/{} {}'.format(task_id, locale, path))
scriptworker.exceptions.TaskVerificationError: No artifact map entry for FbRSbSa3RX-tSmqGWFJK2Q/multi public/build/en-US/target.apk
exit code: 3

Summary: Android nighlty beetmover scriptworker.client - ERROR - Failed to run async_main → Android nightly beetmover scriptworker.client - ERROR - Failed to run async_main

I'm currently guessing the recent declarative artifacts changes may have caused this.

public/build/en-US/target.apk is an artifact on FbRSbSa3RX-tSmqGWFJK2Q, but the 'multi ' part of the path looks wrong.

Right, I see what's happening.

https://github.com/mozilla-releng/beetmoverscript/blob/master/beetmoverscript/task.py#L197 ensures that whatever the installer path, such as 'public/build/target.apk' we translate that to 'target.apk'. This is then passed in to utils.extract_file_config_from_artifact_map on line 201.

That makes its way to https://github.com/mozilla-releng/beetmoverscript/blob/master/beetmoverscript/utils.py#L321 which looks through the entire artifact map, ignoring locales for a path that ends with that filename. It finds the en-US one first, not the multi.

It has to do this translation because it's trying to turn the full path the scriptworker knows about into the upstream artifact path

Assignee: nobody → sfraser

Sorry about this bustage. Was caused by the changes I landed on Friday in bug 1539067.
Thanks Simon for grabbing and fixing this!
I see the puppet bumping beetmoverscript with the fix in here.

Will dig into nightlies to see how that went.

Depends on: 1539067

(In reply to Simon Fraser [:sfraser] ⌚️GMT from comment #5)

Right, I see what's happening.

https://github.com/mozilla-releng/beetmoverscript/blob/master/beetmoverscript/task.py#L197 ensures that whatever the installer path, such as 'public/build/target.apk' we translate that to 'target.apk'. This is then passed in to utils.extract_file_config_from_artifact_map on line 201.

That makes its way to https://github.com/mozilla-releng/beetmoverscript/blob/master/beetmoverscript/utils.py#L321 which looks through the entire artifact map, ignoring locales for a path that ends with that filename. It finds the en-US one first, not the multi.

It has to do this translation because it's trying to turn the full path the scriptworker knows about into the upstream artifact path

Thanks again for fixing this!

I think we can call this done. Feel free to-reopen if I missed anything.

Status: NEW → RESOLVED
Closed: 5 years ago
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.