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
126
infra / config / tricium-prod.cfg [blame]
# Schema for this config file: ProjectConfig in
# luci-config.appspot.com/schemas/projects:tricium-prod.cfg
# This ACL setting only determines who can directly make requests;
# it doesn't limit whose CLs will get automatic analysis run.
acls {
role: REQUESTER
group: "tricium-chromium-requesters"
}
functions {
type: ANALYZER
name: "ClangTidy"
needs: GIT_FILE_DETAILS
provides: RESULTS
path_filters: "*.c"
path_filters: "*.cc"
path_filters: "*.cpp"
path_filters: "*.h"
owner: "gbiv@chromium.org"
monorail_component: "Tools>LLVM"
impls {
runtime_platform: LINUX
provides_for_platform: LINUX
recipe {
project: "chromium"
bucket: "try"
builder: "tricium-clang-tidy"
}
}
}
functions {
type: ANALYZER
name: "Metrics"
needs: GIT_FILE_DETAILS
provides: RESULTS
path_filters: "*.xml"
path_filters: "*.json"
owner: "isherman@chromium.org"
monorail_component: "Internals>Metrics>Tricium"
impls {
runtime_platform: LINUX
provides_for_platform: LINUX
recipe {
project: "chromium"
bucket: "try"
builder: "tricium-metrics-analysis"
}
}
}
functions {
type: ANALYZER
name: "OilpanAnalyzer"
needs: GIT_FILE_DETAILS
provides: RESULTS
path_filters: "*.c"
path_filters: "*.cc"
path_filters: "*.cpp"
path_filters: "*.h"
owner: "yukiy@chromium.org"
monorail_component: "Infra>Platform>Tricium>Analyzer"
impls {
runtime_platform: LINUX
provides_for_platform: LINUX
recipe {
project: "chromium"
bucket: "try"
builder: "tricium-oilpan-analysis"
}
}
}
# Wrapper for simple legacy analyzers.
functions {
type: ANALYZER
name: "Simple"
needs: GIT_FILE_DETAILS
provides: RESULTS
owner: "qyearsley@chromium.org"
monorail_component: "Infra>Platform>Tricium>Analyzer"
impls {
runtime_platform: LINUX
provides_for_platform: LINUX
recipe {
project: "chromium"
bucket: "try"
builder: "tricium-simple"
}
}
}
selections {
function: "ClangTidy"
platform: LINUX
}
selections {
function: "Metrics"
platform: LINUX
}
selections {
function: "OilpanAnalyzer"
platform: LINUX
}
selections {
function: "Simple"
platform: LINUX
}
repos {
gerrit_project {
host: "chromium-review.googlesource.com"
project: "chromium/src"
git_url: "https://chromium.googlesource.com/chromium/src"
}
# This group determines whose CLs will have Tricium runs automatically
# created. For security reasons, Tricium doesn't create runs for users that
# don't have tryjob access.
whitelisted_group: "project-chromium-tryjob-access"
}
service_account: "tricium-prod@appspot.gserviceaccount.com"