Bug 1595808 Comment 0 Edit History

Note: The actual edited comment in the bug view page will always show the original commenter’s name and original timestamp.

Sebastian just noticed Android-Components releases are built off the master branch[1] even though the decision task specifies the following payload:

```
"env": {
    "MOBILE_HEAD_REF": "master",
    "MOBILE_HEAD_REPOSITORY": "https://github.com/mozilla-mobile/android-components",
    "MOBILE_HEAD_REV": "v21.0.0",
    "MOBILE_HEAD_TAG": "v21.0.0",
}
```

I initially thought it's a fallout of the Taskgraph migration, but the first release that has taskgraph enabled was AC 16.0.0, and it didn't have this flaw[3]. After looking more closely, the first busted AC is 18.0.0[4] because the taskgraph image was bumped in [5]. This bump introduced this patch[6], which exposes `HEAD_REF` to any `run-task` task, which includes AC build tasks. It turns out, `run-task` prefers `HEAD_REF` whenever it's specified[7].

Tom, I'm not sure what's the right fix, here. I see several ways, but none of them seems ideal. Do you have an idea?

Impact if we don't fix it: Android-Components cannot ship any dot releases.

[1] https://firefox-ci-tc.services.mozilla.com/tasks/c4wJXJsMT_2Oj2Eg8CMVUg/runs/0/logs/https%3A%2F%2Ffirefox-ci-tc.services.mozilla.com%2Fapi%2Fqueue%2Fv1%2Ftask%2Fc4wJXJsMT_2Oj2Eg8CMVUg%2Fruns%2F0%2Fartifacts%2Fpublic%2Flogs%2Flive.log#L23
[2] https://firefox-ci-tc.services.mozilla.com/tasks/e8Sgva6iSM-8VOEnwEsc-A 
[3] https://tools.taskcluster.net/groups/ewYBlP_eQ9euNKnMmbKfIQ/tasks/LL2FrM7ESBeK2c0jpsDSoA/runs/0/logs/public%2Flogs%2Flive_backing.log#L31
[4] https://tools.taskcluster.net/groups/bA5FnaiLQjePvat8593PWw/tasks/bA5FnaiLQjePvat8593PWw/runs/0/logs/public%2Flogs%2Flive_backing.log#L18
[5] https://github.com/mozilla-mobile/android-components/pull/4745/files#diff-ac0229d1171c0983b27003af4c7441a5R10
[6] https://hg.mozilla.org/ci/taskgraph/rev/faeb33c29200827783e3244ea7c5b8bafa9b9f72
[7] https://hg.mozilla.org/ci/taskgraph/file/bbd657c72f8a5fb113f14ca0a8bd02d9cbd06189/src/taskgraph/run-task/run-task#l446
Sebastian just noticed Android-Components releases are built off the master branch[1] even though the decision task specifies the following payload:

```
"env": {
    "MOBILE_HEAD_REF": "master",
    "MOBILE_HEAD_REPOSITORY": "https://github.com/mozilla-mobile/android-components",
    "MOBILE_HEAD_REV": "v21.0.0",
    "MOBILE_HEAD_TAG": "v21.0.0",
}
```

I initially thought it's a fallout of the Taskgraph migration, but the first release that has taskgraph enabled was AC 16.0.0, and it didn't have this flaw[3]. After looking more closely, the first busted AC is 18.0.0[4] because the taskgraph image was bumped in [5]. This bump introduced that patch[6], which exposes `HEAD_REF` to any `run-task` task (including AC build tasks). It turns out `run-task` prefers `HEAD_REF` whenever it's specified[7].

Tom, I'm not sure what's the right fix, here. I see several ways, but none of them seems ideal. Do you have an idea?

Impact if we don't fix it: Android-Components cannot ship any dot releases.

[1] https://firefox-ci-tc.services.mozilla.com/tasks/c4wJXJsMT_2Oj2Eg8CMVUg/runs/0/logs/https%3A%2F%2Ffirefox-ci-tc.services.mozilla.com%2Fapi%2Fqueue%2Fv1%2Ftask%2Fc4wJXJsMT_2Oj2Eg8CMVUg%2Fruns%2F0%2Fartifacts%2Fpublic%2Flogs%2Flive.log#L23
[2] https://firefox-ci-tc.services.mozilla.com/tasks/e8Sgva6iSM-8VOEnwEsc-A 
[3] https://tools.taskcluster.net/groups/ewYBlP_eQ9euNKnMmbKfIQ/tasks/LL2FrM7ESBeK2c0jpsDSoA/runs/0/logs/public%2Flogs%2Flive_backing.log#L31
[4] https://tools.taskcluster.net/groups/bA5FnaiLQjePvat8593PWw/tasks/bA5FnaiLQjePvat8593PWw/runs/0/logs/public%2Flogs%2Flive_backing.log#L18
[5] https://github.com/mozilla-mobile/android-components/pull/4745/files#diff-ac0229d1171c0983b27003af4c7441a5R10
[6] https://hg.mozilla.org/ci/taskgraph/rev/faeb33c29200827783e3244ea7c5b8bafa9b9f72
[7] https://hg.mozilla.org/ci/taskgraph/file/bbd657c72f8a5fb113f14ca0a8bd02d9cbd06189/src/taskgraph/run-task/run-task#l446

Back to Bug 1595808 Comment 0