mirror of
https://github.com/servo/servo.git
synced 2025-08-04 21:20:23 +01:00
Disallow duplicate taskcluster artifacts.
This commit is contained in:
parent
500cb865bd
commit
5d923c0a95
2 changed files with 13 additions and 3 deletions
|
@ -698,12 +698,13 @@ def wpt_chunks(platform, make_chunk_task, build_task, total_chunks, processes,
|
||||||
--tracker-api default \
|
--tracker-api default \
|
||||||
--reporter-api default
|
--reporter-api default
|
||||||
""")
|
""")
|
||||||
task.with_artifacts(*[
|
all_artifacts = set([
|
||||||
"%s/%s" % (repo_dir, word)
|
"%s/%s" % (repo_dir, word)
|
||||||
for script in task.scripts
|
for script in task.scripts
|
||||||
for word in script.split()
|
for word in script.split()
|
||||||
if word.endswith(".log")
|
if word.endswith(".log")
|
||||||
])
|
])
|
||||||
|
task.with_artifacts(*all_artifacts)
|
||||||
task.find_or_create("%s_%swpt_%s.%s" % (
|
task.find_or_create("%s_%swpt_%s.%s" % (
|
||||||
platform.replace(" ", "_").lower(),
|
platform.replace(" ", "_").lower(),
|
||||||
job_id_prefix.replace("-", "_"),
|
job_id_prefix.replace("-", "_"),
|
||||||
|
|
|
@ -387,7 +387,10 @@ class GenericWorkerTask(Task):
|
||||||
|
|
||||||
Paths are relative to the task’s home directory.
|
Paths are relative to the task’s home directory.
|
||||||
"""
|
"""
|
||||||
self.artifacts.extend((type, path) for path in paths)
|
for path in paths:
|
||||||
|
if (type, path) in self.artifacts:
|
||||||
|
raise ValueError("Duplicate artifact: " + path) # pragma: no cover
|
||||||
|
self.artifacts.append(tuple((type, path)))
|
||||||
return self
|
return self
|
||||||
|
|
||||||
def with_features(self, *names):
|
def with_features(self, *names):
|
||||||
|
@ -736,13 +739,19 @@ class DockerWorkerTask(UnixTaskMixin, Task):
|
||||||
|
|
||||||
with_docker_image = chaining(setattr, "docker_image")
|
with_docker_image = chaining(setattr, "docker_image")
|
||||||
with_max_run_time_minutes = chaining(setattr, "max_run_time_minutes")
|
with_max_run_time_minutes = chaining(setattr, "max_run_time_minutes")
|
||||||
with_artifacts = chaining(append_to_attr, "artifacts")
|
|
||||||
with_script = chaining(append_to_attr, "scripts")
|
with_script = chaining(append_to_attr, "scripts")
|
||||||
with_early_script = chaining(prepend_to_attr, "scripts")
|
with_early_script = chaining(prepend_to_attr, "scripts")
|
||||||
with_caches = chaining(update_attr, "caches")
|
with_caches = chaining(update_attr, "caches")
|
||||||
with_env = chaining(update_attr, "env")
|
with_env = chaining(update_attr, "env")
|
||||||
with_capabilities = chaining(update_attr, "capabilities")
|
with_capabilities = chaining(update_attr, "capabilities")
|
||||||
|
|
||||||
|
def with_artifacts(self, *paths):
|
||||||
|
for path in paths:
|
||||||
|
if path in self.artifacts:
|
||||||
|
raise ValueError("Duplicate artifact: " + path) # pragma: no cover
|
||||||
|
self.artifacts.append(path)
|
||||||
|
return self
|
||||||
|
|
||||||
def build_worker_payload(self):
|
def build_worker_payload(self):
|
||||||
"""
|
"""
|
||||||
Return a `docker-worker` worker payload.
|
Return a `docker-worker` worker payload.
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue