workers/

directory
v58.0.2 Latest Latest
Warning

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

Go to latest
Published: Nov 22, 2023 License: MPL-2.0

README

Workers

Workers operate outside of the Taskcluster services, claiming tasks from the queue and executing them.

Taskcluster currently provides two worker implementations. Docker-worker runs tasks in Docker, and is written in JS. Generic-worker runs on several platforms, with several engines, and is written in Go.

Table of Contents

Docker image with generic worker

In order to simplify generic-worker installation, it is possible to build and use docker image to run generic-worker:

cd workers
docker build -t generic-worker:latest .

docker run --rm -it -v /path/to/config.json:/etc/generic-worker/config.json generic-worker:latest

This builds generic-worker for a given architecture, installs needed binaries, generates ed25519 key. On start shows sample config, if it wasn't mounted.

Minimal config.json looks like this:

{
  "accessToken": "--access-token--",
  "clientId": "--client-id--",
  "ed25519SigningKeyLocation": "/etc/generic-worker/ed25519_key",
  "rootURL": "https://tc-root.url/",
  "workerId": "worker-id",
  "workerType": "worker-type",
  "livelogExecutable": "/usr/local/bin/livelog",
  "taskclusterProxyExecutable": "/usr/local/bin/taskcluster-proxy",
  "publicIP": "127.1.2.3"
}

Access Token and Client Id can be created in https://tc-root.url/auth/clients/create.

This image is also used in a local docker compose development environment.

Directories

Path Synopsis
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.
gdm3
package gdm3 provides functions for interfacing with Gnome Desktop Manager 3
package gdm3 provides functions for interfacing with Gnome Desktop Manager 3
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.
interactive
Package interactive provides a way to run an interactive shell in a task.
Package interactive provides a way to run an interactive shell in a task.
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.
livelog
Package livelog provides a simple wrapper around the livelog executable.
Package livelog provides a simple wrapper around the livelog executable.
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
tcproxy
Package tcproxy provides a simple wrapper around the tcproxy executable.
Package tcproxy provides a simple wrapper around the tcproxy executable.

Jump to

Keyboard shortcuts

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