Bug 1708592 - Install clang-format via a toolchain artifact. r=sylvestre

(Drive-by) Similar to what we just did for rustfmt and clippy.

Differential Revision: https://phabricator.services.mozilla.com/D113906
This commit is contained in:
Mike Hommey 2021-04-30 21:09:12 +00:00
Родитель dc5646ba96
Коммит fb2daa993e
4 изменённых файлов: 25 добавлений и 10 удалений

Просмотреть файл

@ -18,8 +18,6 @@ job-defaults:
- type: file
name: public/code-review/mozlint.json
path: /builds/worker/mozlint.json
env:
CLANG_FORMAT: /builds/worker/fetches/clang-tidy/bin/clang-format
run:
using: mach
when:
@ -344,9 +342,12 @@ clang-format:
- '**/*.m'
- '**/*.mm'
- 'tools/lint/clang-format.yml'
dependencies:
linux64-clang-tidy: toolchain-linux64-clang-tidy
fetches:
toolchain:
- linux64-clang-tidy
linux64-clang-tidy:
- artifact: clang-tidy.tar.zst
dest: clang-tools
rustfmt:

Просмотреть файл

@ -15,8 +15,6 @@ job-defaults:
linux1804-64.*:
docker-image: {in-tree: "lint"}
max-run-time: 3600
env:
CLANG_FORMAT: /builds/worker/fetches/clang-tidy/bin/clang-format
macosx.*:
max-run-time: 3600
env:
@ -207,21 +205,27 @@ mozlint:
run:
using: python-test
subsuite: mozlint
dependencies:
clang-tidy:
by-platform:
linux1804-64/opt: toolchain-linux64-clang-tidy
macosx1014-64/opt: toolchain-macosx64-clang-tidy
windows10-64/opt: toolchain-win64-clang-tidy
fetches:
toolchain:
by-platform:
linux1804-64/opt:
- linux64-clang-tidy
- linux64-node
- linux64-rust
macosx1014-64/opt:
- macosx64-clang-tidy
- macosx64-node
- macosx64-rust
windows10-64/opt:
- win64-clang-tidy
- win64-node
- win64-rust
clang-tidy:
- artifact: clang-tidy.tar.zst
dest: clang-tools
when:
files-changed:
- 'python/mozlint/**'

Просмотреть файл

@ -54,6 +54,10 @@ source_test_description_schema = Schema(
"platform", job_description_schema["worker"]
),
Optional("python-version"): [int],
Optional("dependencies"): {
k: optionally_keyed_by("platform", v)
for k, v in job_description_schema["dependencies"].items()
},
# A list of artifacts to install from 'fetch' tasks.
Optional("fetches"): {
text_type: optionally_keyed_by(
@ -188,6 +192,13 @@ def handle_platform(config, jobs):
resolve_keyed_by(
job, field, item_name=job["name"], project=config.params["project"]
)
for field in job.get("dependencies", {}):
resolve_keyed_by(
job,
"dependencies.{}".format(field),
item_name=job["name"],
project=config.params["project"],
)
if "treeherder" in job:
job["treeherder"]["platform"] = platform

Просмотреть файл

@ -26,7 +26,6 @@ skip-if = os == "win" || os == "mac" # codespell installed on Linux
[test_clippy.py]
[test_rustfmt.py]
[test_clang_format.py]
skip-if = os == "win" || os == "mac" # only installed on Linux
[test_perfdocs.py]
[test_perfdocs_generation.py]
[test_pylint.py]