Taskcluster: Difference between revisions

From MozillaWiki
Jump to navigation Jump to search
(Added pmoore availability)
No edit summary
 
(55 intermediate revisions by 12 users not shown)
Line 1: Line 1:
= TaskCluster =
__NOTOC__
[https://taskcluster.net/ Taskcluster] is a generic task execution service.


== Description ==
Mozilla uses Taskcluster as the continuous integration (CI) pipeline to build and release Firefox and associated browsers to millions of users. A variety of other Mozilla projects also use Taskcluster for their CI needs.


Taskcluster is a generic "task" execution service this page documents mostly administrative things such as who owns which components and when the team meets.
For detailed documentation on the APIs and capabilities please see [https://docs.taskcluster.net docs.taskcluster.net].
 
For detailed documentation on the API's and capabilities please see [http://docs.taskcluster.net docs.taskcluster.net].
 
Find us on #taskcluster on mozilla IRC.


'''References'''
'''References'''
* [http://docs.taskcluster.net/ docs.taskcluster.net (documentation)]
* [https://taskcluster.net/ Taskcluster landing page] (What is Taskcluster and why would you use it?)
* [https://tools.taskcluster.net/ tools.taskcluster.net (inspection and admin tools)]
* [https://docs.taskcluster.net/ docs.taskcluster.net] (documentation)
* [http://status.taskcluster.net/ status.taskcluster.net (status dashboard)]
* [https://github.com/taskcluster github.com/taskcluster] (github organization)
* [https://grafana.taskcluster.net/ grafana.taskcluster.net (grafana statistics dashboards)]
* [https://registry.hub.docker.com/u/taskcluster https://registry.hub.docker.com/u/taskcluster] (public docker images)]
* [https://github.com/taskcluster github.com/taskcluster (github organization)]
* [https://chat.mozilla.org/#/room/#taskcluster:mozilla.org <code>#taskcluster</code> on Mozilla's Element server] (live discussion)
* [https://registry.hub.docker.com/repos/taskcluster/ registry.hub.docker.com/repos/taskcluster/ (public docker images)]
* [https://mail.mozilla.org/listinfo/taskcluster-announce taskcluster-announce] (mailing list: announcements of events, major changes - low volume, no discussion)
* <code>#taskcluster</code> on Mozilla IRC
* [https://lists.mozilla.org/listinfo/tools-taskcluster tools-taskcluster] (mailing list: general taskcluster discussion)
 
* [https://codetribute.netlify.com/projects/taskcluster Codetribute] (list of mentored bugs for new contributors)
== Availability ==
* [https://github.com/taskcluster/taskcluster-rfcs/ Taskcluster RFCs] (planned new features and/or service evolution)
 
** If you have a cool idea for Taskcluster, or are looking for a longer-term project to get involved in, check out the RFC repo. These projects are *not* good for beginners, and will generally require a lot of time, learning about Taskcluster, design, problem-solving, and working with other Mozillians. If you're thinking "that sounds a lot like an internship", then you've understood the scope correctly!
TaskCluster is a critical piece of to what goes on in Try and the other related CI tools that interact with gecko branches (mozilla-central, inbound(s), etc...).
 
If something goes wrong or you ''think'' something has gone wrong and wish to contact us here is a table of which hours we are available and what the irc nicks are (as always
you can try #taskcluster on IRC too)
 
For a quick overview of taskcluster status, see [http://status.taskcluster.net/ status.taskcluster.net].
{| class="wikitable"
|-
! UTC Hour !! IRC Nick
|-
| 0 || lightsofapollo (pst), jonasfj (pdt),
|-
| 1 || lightsofapollo (pst), jonasfj (pdt),
|-
| 2 ||
|-
| 3 ||
|-
| 4 ||
|-
| 5 ||
|-
| 6 ||
|-
| 7 || pmoore (cet)
|-
| 8 || pmoore (cet)
|-
| 9 || pmoore (cet)
|-
| 10 || pmoore (cet)
|-
| 11 || wcosta (brt), pmoore (cet)
|-
| 12 || wcosta (brt), pmoore (cet)
|-
| 13 || wcosta (brt), pmoore (cet)
|-
| 14 || wcosta (brt), pmoore (cet)
|-
| 15 || wcosta (brt), pmoore (cet)
|-
| 16 || wcosta (brt)
|-
| 17 || lightsofapollo (pst), jonasfj (pdt), wcosta (brt),
|-
| 18 || lightsofapollo (pst), jonasfj (pdt), wcosta (brt),
|-
| 19 || lightsofapollo (pst), jonasfj (pdt), wcosta (brt),
|-
| 20 || lightsofapollo (pst), jonasfj (pdt), wcosta (brt),
|-
| 21 || lightsofapollo (pst), jonasfj (pdt), wcosta (brt),
|-
| 22 || lightsofapollo (pst), jonasfj (pdt),
|-
| 23 || lightsofapollo (pst), jonasfj (pdt),
|}
 
If you cannot find some one on IRC and need to escalate quickly please contact James Lal (and failing that Jonas Finnemann Jensen)
 
== Meetings ==
 
=== TaskCluster Meeting ===
 
'''When''': Tuesday 8am PST<br />
'''Where''': James Lal's Room<br/>
'''Agenda''': https://etherpad.mozilla.org/fxos-automation<br/>
 
This meeting is to discuss new ideas/critical issues/etc... This meeting is required for owners
of modules (but open to all) and may be cancelled if there is no Agenda.
 
=== FxOS Automation Hang Out ===
 
'''When''': Thursday 8am PST<br />
'''Where''': James Lal's Room<br />
 
Totally arbitrary meeting usually just an hour for people to hack together (completely optional time reserved for calendaring purposes)
 
== Components ==
 
Our team follows a simple version of the usual "module ownership" pattern seen all over Mozilla... Each owner is responsible for
the health (which is defined as uptime/code quality/decisions) made in each component owned. The ideal is we collaborate through our weekly
meetings but each owner is ultimately responsible for yes/no decisions. Owners are _not_ for life and the team may elect new owners as
time goes on.
 
This is a list of components which as a whole make up TaskCluster... Please contact the owners and visit the github pages for full context:
 
* [https://github.com/taskcluster/aws-provisioner aws-provisioner] - jhford
* [https://github.com/taskcluster/taskcluster-queue queue] - jonasfj
* [https://github.com/taskcluster/task-graph-scheduler scheduler] - jonasfj
* [https://github.com/taskcluster/taskcluster-auth auth] - jonasfj
* [https://github.com/taskcluster/taskcluster-index index] - jonasfj
* [https://github.com/taskcluster/taskcluster-events events] - jonasfj
* [https://github.com/taskcluster/taskcluster-tools tools] - jonasfj
* [https://github.com/taskcluster/s3-copy-proxy s3-copy-proxy] - james
* [https://github.com/taskcluster/mozilla-taskcluster mozilla-taskcluster] - james
* [https://github.com/taskcluster/docker-worker docker-worker] - garndt
* [https://github.com/petemoore/generic-worker generic-worker] - pmoore
* [https://github.com/petemoore/taskcluster-client-go taskcluster-client-go] - pmoore
* [https://github.com/petemoore/taskcluster-client.py taskcluster-client-py] - jhford
* [https://github.com/taskcluster/taskcluster-client taskcluster-cli] - garndt

Latest revision as of 20:31, 29 September 2020

Taskcluster is a generic task execution service.

Mozilla uses Taskcluster as the continuous integration (CI) pipeline to build and release Firefox and associated browsers to millions of users. A variety of other Mozilla projects also use Taskcluster for their CI needs.

For detailed documentation on the APIs and capabilities please see docs.taskcluster.net.

References