Taskcluster: Difference between revisions

No edit summary
No edit summary
 
(34 intermediate revisions by 9 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 || jonasfj (pdt),
|-
| 1 || jonasfj (pdt),
|-
| 2 ||
|-
| 3 ||
|-
| 4 ||
|-
| 5 ||
|-
| 6 ||
|-
| 7 || pmoore (cet), jhford (cest)
|-
| 8 || pmoore (cet), jhford (cest)
|-
| 9 || pmoore (cet), jhford (cest)
|-
| 10 || pmoore (cet), jhford (cest)
|-
| 11 || wcosta (brt), pmoore (cet), jhford (cest)
|-
| 12 || wcosta (brt), pmoore (cet), jhford (cest)
|-
| 13 || wcosta (brt), pmoore (cet), jhford (cest), garndt (cdt), dustin (edt)
|-
| 14 || wcosta (brt), pmoore (cet), jhford (cest), garndt (cdt), dustin (edt)
|-
| 15 || selenamarie (pdt), wcosta (brt), pmoore (cet), jhford (cest), garndt (cdt), dustin (edt)
|-
| 16 || selenamarie (pdt), wcosta (brt), garndt (cdt), dustin (edt)
|-
| 17 || selenamarie (pdt), jonasfj (pdt), wcosta (brt), garndt (cdt), dustin (edt)
|-
| 18 || selenamarie (pdt), jonasfj (pdt), wcosta (brt), garndt (cdt), dustin (edt)
|-
| 19 || selenamarie (pdt), jonasfj (pdt), wcosta (brt), garndt (cdt), dustin (edt)
|-
| 20 || selenamarie (pdt), jonasfj (pdt), wcosta (brt), garndt (cdt), dustin (edt)
|-
| 21 || selenamarie (pdt), jonasfj (pdt), wcosta (brt), garndt (cdt), dustin (edt)
|-
| 22 || selenamarie (pdt), jonasfj (pdt),
|-
| 23 || selenamarie (pdt), jonasfj (pdt),
|}
 
If you cannot find some one on IRC and need to escalate quickly please contact Selena Deckelmann (and failing that Jonas Finnemann Jensen)
 
== Meetings ==
 
=== TaskCluster Meeting ===
 
'''When''': Tuesday 8am PST<br />
'''Where''': TaskClusterPlatform Room<br/>
'''Agenda''': https://public.etherpad-mozilla.org/p/taskcluster-weekly-meeting<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.
 
== Operations Documentation ==
 
How To..
 
* [[/Update SSL Certificates]]
 
== 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/taskcluster-auth auth] - jonasfj
* [https://github.com/taskcluster/aws-provisioner aws-provisioner] - jhford
* [https://github.com/taskcluster/docker-worker docker-worker] - garndt
* [https://github.com/taskcluster/taskcluster-events events] - jonasfj
* [https://taskcluster.github.io/generic-worker generic-worker] - pmoore
* [https://github.com/taskcluster/heroku-grafana heroku-grafana] - jonasfj
* [https://github.com/taskcluster/taskcluster-index index] - jonasfj
* [https://github.com/taskcluster/mozilla-taskcluster mozilla-taskcluster] - garndt
* [https://github.com/taskcluster/taskcluster-queue queue] - jonasfj
* [https://github.com/taskcluster/s3-copy-proxy s3-copy-proxy] - jhford (possibly?)
* [https://github.com/taskcluster/task-graph-scheduler scheduler] - jonasfj
* [https://github.com/taskcluster/taskcluster-client taskcluster-cli] - garndt
* [https://taskcluster.github.io/taskcluster-client-go taskcluster-client-go] - pmoore
* [https://github.com/taskcluster/taskcluster-client.py taskcluster-client-py] - jhford
* [https://github.com/taskcluster/taskcluster-github taskcluster-github] - dividehex
* [https://github.com/taskcluster/taskcluster-secrets taskcluster-secrets] - dustin
* [https://github.com/taskcluster/taskcluster-vcs taskcluster-vcs] - garndt
* [https://github.com/taskcluster/taskcluster-tools tools] - jonasfj
* [https://github.com/taskcluster/taskcluster-hooks hooks] - dustin
* [https://github.com/taskcluster/taskcluster-purge-cache purge-cache] - jonasfj
* [https://github.com/taskcluster/taskcluster-login login] - jonasfj (or dustin)

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