Closed
Bug 1582923
Opened 5 years ago
Closed 5 years ago
Allow for additional Taskcluster functionality to be implemented under comm/taskcluster
Categories
(Thunderbird :: Build Config, enhancement)
Tracking
(Not tracked)
RESOLVED
FIXED
Thunderbird 75.0
People
(Reporter: rjl, Assigned: rjl)
References
Details
User Story
Two Thunderbird developers have tried to implement new task kinds outside of mozilla- code in the past couple of months with very limited success. These tasks fall into one of three categories: - a task kind exists in Thunderbird, but the definitions are direct references to the Firefox definitions. These are underlying components of the build system: docker images, debian package rebuilds, fetch task, toolchain builds - does not clearly map to an existing task kind - an existing task kind makes sense, but the schema is limited in a way that does not work for Thunderbird. Specific use cases that have come up: - Bug 1574835 - gdata-provider multilang repack at buildtime - This was abandoned for other reasons, but would have been implemented as a separate task and likely would have needed a new task kind - Bug 1573570 - The requirement was to download an external file and include it in the build. This would be implemented as a fetch task. As mentioned above those are all imported from Firefox and there is no existing way to define individual tasks of a single kind in multiple trees - Bug 1518166 - A third party library needs to be added to the build. The code is vendored in the repository, but is quite finicky on OS's other than Linux and pretty much demands that it be cross-compiled when targeting Windows. Implementing as a toolchain build seems to be the obvious solution, however limitations on the schema and script paths have made this a challenge. It could be implemented as a separate build task, but there are similar problems. Ideally the cached_task transform would be applied like for toolchain builds, but transforms apply to every task in a kind. This can be worked around, but this would just work better as a toolchain task. - Bug 1586508 - It comes down to workflow differences between how Firefox and Thunderbird operate. Throw in Seamonkey and the existing strategies don't quite cover what we'd like.
Attachments
(1 file, 1 obsolete file)
(deleted),
patch
|
Details | Diff | Splinter Review |
Thunderbird's build needs are expected to grow in the next development cycle. The ability to implement certain features in Thunderbird's source tree will be very important in implementing new functionality in a timely manner.
Possible features to implement:
- new task kinds defined in comm_taskgraph
- new run_as functions for those kinds
- schema modification - within limits, for example the ability to use a different run as function or a script in a different location
- new optimization strategies
Assignee | ||
Updated•5 years ago
|
User Story: (updated)
Assignee | ||
Updated•5 years ago
|
User Story: (updated)
Comment 1•5 years ago
|
||
It may be worth while to look at Bug 1568006 and port that back to the m-c copy of taskgraph, as well as look at what we've done with some of our github projects such as fenix (see here.
Assignee | ||
Comment 2•5 years ago
|
||
Needs the rest of bug 1609987.
Attachment #9123848 -
Flags: review?(geoff)
Updated•5 years ago
|
Attachment #9123848 -
Flags: review?(geoff) → review+
Assignee | ||
Comment 3•5 years ago
|
||
Small update from what was reviewed. 'documentation' needs to
be added to the list of modules to load.
Assignee | ||
Updated•5 years ago
|
Attachment #9123848 -
Attachment is obsolete: true
Pushed by thunderbird@calypsoblue.org:
https://hg.mozilla.org/comm-central/rev/4ca5a41330ff
Allow new task kinds to be defined in c-c. r=darktrojan
Status: NEW → RESOLVED
Closed: 5 years ago
Resolution: --- → FIXED
Assignee | ||
Updated•5 years ago
|
Version: unspecified → 75
Updated•5 years ago
|
Target Milestone: --- → Thunderbird 75.0
You need to log in
before you can comment on or make changes to this bug.
Description
•