summaryrefslogtreecommitdiffstats
path: root/taskcluster/ci/toolchain/clang-tidy.yml
blob: f4be606c2c77591b8628ad91dd6b66c7fdfa8a30 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
# 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 http://mozilla.org/MPL/2.0/.
---
job-defaults:
    description: "Clang-tidy build"
    attributes:
        local-toolchain: true
    index:
        product: static-analysis
    worker-type: b-linux-large
    worker:
        max-run-time: 3600
    run:
        toolchain-artifact: public/build/clang-tidy.tar.zst
        resources:
            - 'build/clang-plugin/**/*.cpp'
            - 'build/clang-plugin/**/*.h'
            - 'build/clang-plugin/*.inc'
            - 'build/clang-plugin/*.py'
            - 'build/clang-plugin/moz.build'
            - 'build/clang-plugin/Makefile.in'
            - 'build/build-clang/build-clang.py'
    fetches:
        fetch:
            - clang-11

linux64-clang-tidy:
    index:
        job-name: linux64-clang-tidy
    treeherder:
        symbol: TL(clang-tidy)
    run:
        script: build-clang.sh
        arguments:
            - 'build/build-clang/clang-tidy-linux64.json'
        resources:
            - 'build/build-clang/clang-tidy-linux64.json'
    run-on-projects:
        - trunk
    fetches:
        toolchain:
            - linux64-binutils
            - linux64-gcc-7

macosx64-clang-tidy:
    index:
        job-name: macosx64-clang-tidy
    treeherder:
        symbol: TM(clang-tidy)
    worker-type: b-linux-large
    worker:
        env:
            TOOLTOOL_MANIFEST: "browser/config/tooltool-manifests/macosx64/cross-releng.manifest"
    run:
        using: toolchain-script
        script: build-clang.sh
        tooltool-downloads: internal
        arguments:
            - 'build/build-clang/clang-tidy-macosx64.json'
        resources:
            - 'build/build-clang/clang-tidy-macosx64.json'
            - 'taskcluster/scripts/misc/tooltool-download.sh'
    run-on-projects:
        - trunk
    fetches:
        toolchain:
            - linux64-binutils
            - linux64-cctools-port-clang-11
            - linux64-clang-11-macosx-cross
            - linux64-gcc-7
            - linux64-node

win64-clang-tidy:
    description: "Clang-tidy toolchain build"
    index:
        job-name: win64-clang-tidy
    treeherder:
        symbol: TW64(clang-tidy)
        tier: 2
    worker-type: b-win2012
    worker:
        max-run-time: 7200
        env:
            TOOLTOOL_MANIFEST: "browser/config/tooltool-manifests/win64/vs2017.manifest"
    run:
        script: build-clang.sh
        arguments:
            - 'build/build-clang/clang-tidy-win64.json'
        resources:
            - 'build/build-clang/clang-tidy-win64.json'
        tooltool-downloads: internal
    run-on-projects:
        - trunk
    fetches:
        fetch:
            - cmake
            - ninja

linux64-clang-tidy-external:
    attributes:
        local-toolchain: false
    index:
        job-name: linux64-clang-tidy-external
    treeherder:
        symbol: TL(clang-tidy-e)
    worker:
        artifacts:
            - name: project/civet/clang-tidy.tar.zst
              path: /builds/worker/private-artifacts/clang-tidy.tar.zst
              type: file
    run:
        toolchain-artifact: project/civet/clang-tidy.tar.zst
        script: build-clang-tidy-external.sh
        arguments:
            - 'build/build-clang/clang-tidy-external-linux64.json'
        resources:
            - 'build/build-clang/clang-tidy-external-linux64.json'
    run-on-projects: []
    fetches:
        fetch:
            - civet-source
        toolchain:
            - linux64-binutils
            - linux64-gcc-7