mirror of
https://github.com/servo/servo.git
synced 2025-07-23 15:23:42 +01:00
Each sub-task needs IRC notification individually
This commit is contained in:
parent
45ab69b996
commit
726ccf3a39
2 changed files with 21 additions and 10 deletions
|
@ -18,16 +18,25 @@ def main():
|
||||||
|
|
||||||
# https://tools.taskcluster.net/hooks/project-servo/daily
|
# https://tools.taskcluster.net/hooks/project-servo/daily
|
||||||
elif task_for == "daily":
|
elif task_for == "daily":
|
||||||
# Unlike when reacting to a GitHub event,
|
daily_tasks_setup()
|
||||||
# the commit hash is not known until we clone the repository.
|
|
||||||
os.environ["GIT_SHA"] = \
|
|
||||||
subprocess.check_output(["git", "rev-parse", "HEAD"]).decode("utf8").strip()
|
|
||||||
with_rust_nightly()
|
with_rust_nightly()
|
||||||
|
|
||||||
else:
|
else:
|
||||||
raise ValueError("Unrecognized $TASK_FOR value: %r", task_for)
|
raise ValueError("Unrecognized $TASK_FOR value: %r", task_for)
|
||||||
|
|
||||||
|
|
||||||
|
def daily_tasks_setup():
|
||||||
|
# Unlike when reacting to a GitHub event,
|
||||||
|
# the commit hash is not known until we clone the repository.
|
||||||
|
os.environ["GIT_SHA"] = \
|
||||||
|
subprocess.check_output(["git", "rev-parse", "HEAD"]).decode("utf8").strip()
|
||||||
|
|
||||||
|
# On failure, notify a few people on IRC
|
||||||
|
decision.task_name_template = "Servo daily: %s. On failure, ping: SimonSapin, nox, emilio"
|
||||||
|
decision.routes_for_all_subtasks.append("notify.irc-channel.#servo.on-failed")
|
||||||
|
decision.scopes_for_all_subtasks.append("queue:route:notify.irc-channel.#servo.on-failed")
|
||||||
|
|
||||||
|
|
||||||
build_artifacts_expiry = "1 week"
|
build_artifacts_expiry = "1 week"
|
||||||
log_artifacts_expiry = "1 year"
|
log_artifacts_expiry = "1 year"
|
||||||
|
|
||||||
|
@ -167,7 +176,7 @@ def dockerfile_path(name):
|
||||||
|
|
||||||
|
|
||||||
decision = DecisionTask(
|
decision = DecisionTask(
|
||||||
project_name="Servo", # Used in task names
|
task_name_template="Servo: %s",
|
||||||
route_prefix="project.servo.servo",
|
route_prefix="project.servo.servo",
|
||||||
worker_type="servo-docker-worker",
|
worker_type="servo-docker-worker",
|
||||||
)
|
)
|
||||||
|
|
|
@ -29,12 +29,14 @@ class DecisionTask:
|
||||||
DOCKER_IMAGE_BUILDER_IMAGE = "servobrowser/taskcluster-bootstrap:image-builder@sha256:" \
|
DOCKER_IMAGE_BUILDER_IMAGE = "servobrowser/taskcluster-bootstrap:image-builder@sha256:" \
|
||||||
"0a7d012ce444d62ffb9e7f06f0c52fedc24b68c2060711b313263367f7272d9d"
|
"0a7d012ce444d62ffb9e7f06f0c52fedc24b68c2060711b313263367f7272d9d"
|
||||||
|
|
||||||
def __init__(self, project_name, *, route_prefix,
|
def __init__(self, *, route_prefix, task_name_template="%s",
|
||||||
worker_type="github-worker", docker_image_cache_expiry="1 year"):
|
worker_type="github-worker", docker_image_cache_expiry="1 year"):
|
||||||
self.project_name = project_name
|
self.task_name_template = task_name_template
|
||||||
self.route_prefix = route_prefix
|
self.route_prefix = route_prefix
|
||||||
self.worker_type = worker_type
|
self.worker_type = worker_type
|
||||||
self.docker_image_cache_expiry = docker_image_cache_expiry
|
self.docker_image_cache_expiry = docker_image_cache_expiry
|
||||||
|
self.routes_for_all_subtasks = []
|
||||||
|
self.scopes_for_all_subtasks = []
|
||||||
|
|
||||||
# https://docs.taskcluster.net/docs/reference/workers/docker-worker/docs/features#feature-taskclusterproxy
|
# https://docs.taskcluster.net/docs/reference/workers/docker-worker/docs/features#feature-taskclusterproxy
|
||||||
self.queue_service = taskcluster.Queue(options={"baseUrl": "http://taskcluster/queue/v1/"})
|
self.queue_service = taskcluster.Queue(options={"baseUrl": "http://taskcluster/queue/v1/"})
|
||||||
|
@ -159,13 +161,13 @@ class DecisionTask:
|
||||||
"created": self.from_now_json(""),
|
"created": self.from_now_json(""),
|
||||||
"deadline": self.from_now_json("1 day"),
|
"deadline": self.from_now_json("1 day"),
|
||||||
"metadata": {
|
"metadata": {
|
||||||
"name": "%s: %s" % (self.project_name, task_name),
|
"name": self.task_name_template % task_name,
|
||||||
"description": "",
|
"description": "",
|
||||||
"owner": task_owner,
|
"owner": task_owner,
|
||||||
"source": task_source,
|
"source": task_source,
|
||||||
},
|
},
|
||||||
"scopes": scopes or [],
|
"scopes": (scopes or []) + self.scopes_for_all_subtasks,
|
||||||
"routes": routes or [],
|
"routes": (routes or []) + self.routes_for_all_subtasks,
|
||||||
"extra": extra or {},
|
"extra": extra or {},
|
||||||
"payload": {
|
"payload": {
|
||||||
"cache": cache or {},
|
"cache": cache or {},
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue