taskcluster

module
Version: v28.2.3 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 9, 2020 License: MPL-2.0

README ΒΆ


Taskcluster
Taskcluster

Inspecting a task on Taskcluster UI

The task execution framework that supports Mozilla's continuous integration and release processes.

License Chat Codecov netlify


Usage

This repository is used to develop, build, and release the Taskcluster services. It is not possible to run a full Taskcluster deployment directly from this repository, although individual services can be run for development purposes.

Table of Contents

Team Mentions

Do you need to reach a specific subset of the team? Use the team handles to mention us with GitHub's @mention feature.

Team Name Use To...
@taskcluster/Core ping members of the Taskcluster team at Mozilla
@taskcluster/services-reviewers ping reviewers for changes to platform services and libraries
@taskcluster/frontend-reviewers ping people who can review changes to frontend (and related) code in the services monorepo
@taskcluster/security-folks ping people who do security things

Contributors

Thanks goes to these wonderful people (emoji key):


James Lal

πŸ’» πŸ‘‹

Selena Deckelmann

πŸ’» πŸ‘‹

Dustin J. Mitchell

πŸ’» πŸ”§

Wander Lairson Costa

πŸ’» πŸ”§

Greg Arndt

πŸ’» πŸ‘‹

Pete Moore

πŸ’» πŸ”§

Hassan Ali

πŸ’» πŸ”§

Brian Stack

πŸ’» πŸ”§

John Ford

πŸ’» πŸ‘‹

Eli Perelman

πŸ’» πŸ‘‹

Jonas Finnemann Jensen

πŸ’» πŸ‘‹

owlishDeveloper

πŸ’» πŸ”§

Miles Crabill

πŸ’» πŸ”§

Chris Cooper

πŸ’» πŸ”§

Rob Thijssen

πŸ’»

Anup

πŸ’»

Hammad Akhtar

πŸ’»

Chinmay Kousik

πŸ’»

Anthony Miyaguchi

πŸ’»

Ana Rute Mendes

πŸ’»

Andrea Del Rio

πŸ’»

kristelteng

πŸ’»

Elena Solomon

πŸ’»

Xavier L.

πŸ’»

Yann Landry

πŸ’»

Ayub

πŸ’»

lteigrob

πŸ’»

Bastien Abadie

πŸ’»

Amjad Mashaal

πŸ’»

Tom Prince

πŸ’»

Samantha Yu

πŸ’»

Auni Ahsan

πŸ’»

alex

πŸ’»

Alisha Aneja

πŸ’»

Prachi Manchanda

πŸ’»

Simon Fraser

πŸ’»

Yashvardhan Didwania

πŸ’»

Cynthia Pereira

πŸ’»

Hashini Galappaththi

πŸ’»

Fienny Angelina

πŸ’»

Kanika Saini

πŸ’»

Biboswan Roy

πŸ’»

sudipt dabral

πŸ’»

Ojaswin

πŸ’»

ΠœΠ°Ρ‚Ρ€Π΅ΡˆΠΊΠ°

πŸ’»

Alok Kumar

πŸ’»

Arshad Kazmi

πŸ’»

Jason Yang

πŸ’»

Shubham Gupta

πŸ’»

Arun Kumar Mohan

πŸ’»

Brian Pitts

πŸ’»

E. Dunham

πŸ’»

Shubham Chinda

πŸ’»

Patrick Kang

πŸ’»

Rishabh Budhiraja

πŸ’»

ededals

πŸ’»

Ajin Kabeer

πŸ’»

Catherine Chepkurui

πŸ’»

Jo

πŸ’»

vishakha

πŸ’» πŸ“–

Noor Fatima

πŸ’»

Michael

πŸ’»

Mariana Zangrossi

πŸ’»

ANURADHAJHA99

πŸ’»

Edil

πŸ’»

Olympia

πŸ’» πŸ“–

Michael Ozoemena

πŸ’»

lailahgrant

πŸ’»

km-js

πŸ’»

Carolina Machado

πŸ’»

reenesa

πŸ’»

Kelli Blalock

πŸ’»

naima shaikh

πŸ’»

Jiwoon Kim

πŸ’»

Michael Umanah

πŸ’»

Fahd Jamal A.

πŸ“–

shilpi verma

πŸ’»

somchi

πŸ’»

Anastasia

πŸ’»

Lubna

πŸ’»

Soundharya AM

πŸ’»

Mustafa Jebara

πŸ’»

Aryaman Puri

πŸ’»

This project follows the all-contributors specification. Contributions of any kind are welcome!

Directories ΒΆ

Path Synopsis
clients
client-go/codegenerator/model
Package model contains the core logic of the code generation process.
Package model contains the core logic of the code generation process.
client-go/integrationtest
Package integrationtest stores all the integration tests that run against the taskcluster cluster client
Package integrationtest stores all the integration tests that run against the taskcluster cluster client
client-go/tcauth
Authentication related API end-points for Taskcluster and related services.
Authentication related API end-points for Taskcluster and related services.
client-go/tcauthevents
The auth service is responsible for storing credentials, managing assignment of scopes, and validation of request signatures from other services.
The auth service is responsible for storing credentials, managing assignment of scopes, and validation of request signatures from other services.
client-go/tcgithub
The github service is responsible for creating tasks in reposnse to GitHub events, and posting results to the GitHub UI.
The github service is responsible for creating tasks in reposnse to GitHub events, and posting results to the GitHub UI.
client-go/tcgithubevents
The github service publishes a pulse message for supported github events, translating Github webhook events into pulse messages.
The github service publishes a pulse message for supported github events, translating Github webhook events into pulse messages.
client-go/tchooks
The hooks service provides a mechanism for creating tasks in response to events.
The hooks service provides a mechanism for creating tasks in response to events.
client-go/tchooksevents
The hooks service is responsible for creating tasks at specific times orin .
The hooks service is responsible for creating tasks at specific times orin .
client-go/tcindex
The index service is responsible for indexing tasks.
The index service is responsible for indexing tasks.
client-go/tcnotify
The notification service listens for tasks with associated notifications and handles requests to send emails and post pulse messages.
The notification service listens for tasks with associated notifications and handles requests to send emails and post pulse messages.
client-go/tcnotifyevents
This pretty much only contains the simple free-form message that can be published from this service from a request by anybody with the proper scopes.
This pretty much only contains the simple free-form message that can be published from this service from a request by anybody with the proper scopes.
client-go/tcpurgecache
The purge-cache service is responsible for tracking cache-purge requests.
The purge-cache service is responsible for tracking cache-purge requests.
client-go/tcpurgecacheevents
The purge-cache service, typically available at `purge-cache.taskcluster.net`, is responsible for publishing a pulse message for workers, so they can purge cache upon request.
The purge-cache service, typically available at `purge-cache.taskcluster.net`, is responsible for publishing a pulse message for workers, so they can purge cache upon request.
client-go/tcqueue
The queue service is responsible for accepting tasks and track their state as they are executed by workers.
The queue service is responsible for accepting tasks and track their state as they are executed by workers.
client-go/tcqueueevents
The queue service is responsible for accepting tasks and track their state as they are executed by workers.
The queue service is responsible for accepting tasks and track their state as they are executed by workers.
client-go/tcsecrets
The secrets service provides a simple key/value store for small bits of secret data.
The secrets service provides a simple key/value store for small bits of secret data.
client-go/tcworkermanager
This service manages workers, including provisioning for dynamic worker pools.
This service manages workers, including provisioning for dynamic worker pools.
client-go/tcworkermanagerevents
These exchanges provide notifications when a worker pool is created or updated.This is so that the provisioner running in a differentprocess at the other end can synchronize to the changes.
These exchanges provide notifications when a worker pool is created or updated.This is so that the provisioner running in a differentprocess at the other end can synchronize to the changes.
client-shell/apis
Package apis implements all the API endpoints.
Package apis implements all the API endpoints.
client-shell/client
Package client contains integration code for taskcluster-client-go.
Package client contains integration code for taskcluster-client-go.
client-shell/cmds/completions
Package completions implements command completion support.
Package completions implements command completion support.
client-shell/cmds/config
Package configCmd implements the config subcommands.
Package configCmd implements the config subcommands.
client-shell/cmds/from-now
Package fromNow implements the from-now command.
Package fromNow implements the from-now command.
client-shell/cmds/group
Package group implements the group interaction subcommands.
Package group implements the group interaction subcommands.
client-shell/cmds/root
Package root defines the root of the application command tree.
Package root defines the root of the application command tree.
client-shell/cmds/signin
Package signin implements the signin command.
Package signin implements the signin command.
client-shell/cmds/slugid
Package slugid implements the slugid subcommands.
Package slugid implements the slugid subcommands.
client-shell/cmds/task
Package task implements the task subcommands.
Package task implements the task subcommands.
client-shell/cmds/version
Package version implements the version subcommand.
Package version implements the version subcommand.
client-shell/config
Package config implements the configuration management system.
Package config implements the configuration management system.
tools
jsonschema2go
Package jsonschema2go allows you to translate json schemas like this: { "definitions": { "activities": { "description": "A subset of all known human activities", "type": "object", "additionalProperties": false, "properties": { "snooker": { "description": "The fine sport of snooker, invented in Madras around 1885", "type": "boolean" }, "cooking": { "description": "The act of preparing food for consumption, typically involving the application of heat", "type": "boolean" } }, "required": [ "cooking", "snooker" ] } }, "title": "person", "description": "A member of the animal kingdom of planet Earth, dominant briefly around 13.8 billion years after the Big Bang", "type": "object", "additionalProperties": false, "properties": { "address": { "description": "Where the person lives", "type": "array", "items": { "type": "string" } }, "hobbies": { "description": "Hobbies the person has", "$ref": "#/definitions/activities" }, "dislikes": { "description": "Activities this person dislikes", "$ref": "#/definitions/activities" } }, "required": [ "address" ] } into generated code like this: // This source code file is AUTO-GENERATED by github.com/taskcluster/jsonschema2go package main type ( // A subset of all known human activities Activities struct { // The act of preparing food for consumption, typically involving the application of heat Cooking bool `json:"cooking"` // The fine sport of snooker, invented in Madras around 1885 Snooker bool `json:"snooker"` } // A member of the animal kingdom of planet Earth, dominant briefly around 13.8 billion years after the Big Bang Person struct { // Where the person lives Address []string `json:"address"` // Activities this person dislikes Dislikes Activities `json:"dislikes,omitempty"` // Hobbies the person has Hobbies Activities `json:"hobbies,omitempty"` } ) This then allows you to json.Unmarshal json data that conforms to a given schema into the generated types.
Package jsonschema2go allows you to translate json schemas like this: { "definitions": { "activities": { "description": "A subset of all known human activities", "type": "object", "additionalProperties": false, "properties": { "snooker": { "description": "The fine sport of snooker, invented in Madras around 1885", "type": "boolean" }, "cooking": { "description": "The act of preparing food for consumption, typically involving the application of heat", "type": "boolean" } }, "required": [ "cooking", "snooker" ] } }, "title": "person", "description": "A member of the animal kingdom of planet Earth, dominant briefly around 13.8 billion years after the Big Bang", "type": "object", "additionalProperties": false, "properties": { "address": { "description": "Where the person lives", "type": "array", "items": { "type": "string" } }, "hobbies": { "description": "Hobbies the person has", "$ref": "#/definitions/activities" }, "dislikes": { "description": "Activities this person dislikes", "$ref": "#/definitions/activities" } }, "required": [ "address" ] } into generated code like this: // This source code file is AUTO-GENERATED by github.com/taskcluster/jsonschema2go package main type ( // A subset of all known human activities Activities struct { // The act of preparing food for consumption, typically involving the application of heat Cooking bool `json:"cooking"` // The fine sport of snooker, invented in Madras around 1885 Snooker bool `json:"snooker"` } // A member of the animal kingdom of planet Earth, dominant briefly around 13.8 billion years after the Big Bang Person struct { // Where the person lives Address []string `json:"address"` // Activities this person dislikes Dislikes Activities `json:"dislikes,omitempty"` // Hobbies the person has Hobbies Activities `json:"hobbies,omitempty"` } ) This then allows you to json.Unmarshal json data that conforms to a given schema into the generated types.
jsonschema2go/jsonschema2go
jsonschema2go is the command invoked by go generate in order to generate the go client library.
jsonschema2go is the command invoked by go generate in order to generate the go client library.
jsonschema2go/text
Package text contains utility functions for manipulating raw text strings
Package text contains utility functions for manipulating raw text strings
worker-runner/logging
The logging package is an internal logging abstraction, designed to handle both structured and unstructured data.
The logging package is an internal logging abstraction, designed to handle both structured and unstructured data.
worker-runner/provider/azure
This package reads from the Azure metadata service; see https://docs.microsoft.com/en-us/azure/virtual-machines/windows/instance-metadata-service#custom-data
This package reads from the Azure metadata service; see https://docs.microsoft.com/en-us/azure/virtual-machines/windows/instance-metadata-service#custom-data
workers
generic-worker/expose
Expose serves as an abstract mechanism for exposing local services to the world.
Expose serves as an abstract mechanism for exposing local services to the world.
generic-worker/gdm3
package gdm3 provides functions for interfacing with Gnome Desktop Manager 3 on linux
package gdm3 provides functions for interfacing with Gnome Desktop Manager 3 on linux
generic-worker/host
Package host provides facilities for interfacing with the host operating system, logging activities performed.
Package host provides facilities for interfacing with the host operating system, logging activities performed.
generic-worker/kc
Package kc provides functions for encoding/decoding darwin user passwords, for use in the /etc/kcpassword file.
Package kc provides functions for encoding/decoding darwin user passwords, for use in the /etc/kcpassword file.
generic-worker/livelog
Package livelog provides a simple wrapper around the livelog executable.
Package livelog provides a simple wrapper around the livelog executable.
generic-worker/process
Package process provides a mechanism for running processes under a different user account to the current process
Package process provides a mechanism for running processes under a different user account to the current process
generic-worker/tcproxy
Package tcproxy provides a simple wrapper around the tcproxy executable.
Package tcproxy provides a simple wrapper around the tcproxy executable.
generic-worker/testutil
Package testutil contains utilities that are used by tests from _multiple_ packages.
Package testutil contains utilities that are used by tests from _multiple_ packages.
internal
scopes
Package scopes provides utilities for manipulating and interpreting Taskcluster scopes.
Package scopes provides utilities for manipulating and interpreting Taskcluster scopes.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL