mozilla-releng / mozilla-releng/scriptworker

cot_verify does not download `actions.json` artifact from other action tasks

Open
#580 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Python
Stars
5
Forks
39
Avg merge
4h 18m
Merged PRs (30d)
6

Description

This means that if you have an action task that was created from the graph of another action task, CoT will fail as the actions.json artifact will be missing from the file system.

This was borne out of an assumtion that actions would only be triggered from on-push Decision tasks, and not other action graphs. I hit it when I was attempting to rebuild cached tasks for a chain of trust rotation and retriggered a task that was part of a release-promotion graph. So this task had a parent that was an action (retrigger), whose parent was also an action (release-promotion).

This case is easily worked around by using add-new-jobs from an on-push Decision graph, so it's not hugely important to fix. Though I do think it would be nice to make this edge case work in case anyone else runs into it in the future.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by tracing the cot_verify entry point and how it obtains the actions.json artifact for tasks created from action graphs. Reproduce a chain where an action task has an action parent, then ensure the artifact is available before verification; confirm the existing on-push Decision workaround is no longer required for this case.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
devops
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.