Source code

Revision control

Other Tools

# -*- coding: utf-8 -*-
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at
from __future__ import absolute_import, print_function, unicode_literals
import logging
from taskgraph.util.taskcluster import purge_cache
from .registry import register_callback_action
from taskgraph.util import taskcluster
logger = logging.getLogger(__name__)
title="Purge Worker Caches",
"Purge any caches associated with this task "
"across all workers of the same workertype as the task."
context=[{"worker-implementation": "docker-worker"}],
def purge_caches_action(parameters, graph_config, input, task_group_id, task_id):
task = taskcluster.get_task_definition(task_id)
if task["payload"].get("cache"):
for cache in task["payload"]["cache"]:
task["provisionerId"], task["workerType"], cache, use_proxy=True
else:"Task has no caches. Will not clear anything!")