Skip to content

Commit 65edbe4

Browse files
committed
Dissolve top level gitiles-* directories
The current layout of having gitiles-* directories with separate java source trees dates back to the bad era of Maven, when this specific layout was necessary to decompose the build into separate pom.xml files. Moreover, src/{main,test}/java are also Maven artifacts, so that we go even further and create three top level directories: * java * javatests * resources Change-Id: I4421096428db1e3de019a9b6c1253217cf7e4fbe
1 parent 3739fcd commit 65edbe4

File tree

145 files changed

+181
-155
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

145 files changed

+181
-155
lines changed

Diff for: BUILD

+3-3
Original file line numberDiff line numberDiff line change
@@ -2,12 +2,12 @@ load("@com_googlesource_gerrit_bazlets//tools:pkg_war.bzl", "pkg_war")
22

33
pkg_war(
44
name = "gitiles",
5-
context = ["//gitiles-servlet:webassets"],
5+
context = ["//resources/com/google/gitiles:webassets"],
66
libs = [
7-
"//gitiles-servlet:servlet",
87
"//lib/jetty:server",
98
"//lib/jetty:servlet",
109
"//lib/slf4j:slf4j-simple",
10+
"//java/com/google/gitiles:servlet",
1111
],
12-
web_xml = "//gitiles-war:web_xml",
12+
web_xml = "//resources:web_xml",
1313
)

Diff for: blame-cache/BUILD

-27
This file was deleted.

Diff for: gitiles-servlet/BUILD

-108
This file was deleted.

Diff for: java/com/google/gitiles/BUILD

+89
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,89 @@
1+
# TODO(davido): Move sources that depend on the rest of gitiles
2+
# out of the blame directory and move this rule into its own BUILD
3+
# file in blame directory.
4+
BLAME_CACHE_SRCS = ["blame/" + n for n in [
5+
"BlameCache.java",
6+
"BlameCacheImpl.java",
7+
"Region.java",
8+
]]
9+
10+
java_library(
11+
name = "blame-cache",
12+
srcs = BLAME_CACHE_SRCS,
13+
visibility = ["//visibility:public"],
14+
deps = [
15+
"//lib:guava",
16+
"//lib/jgit",
17+
],
18+
)
19+
20+
load("@com_googlesource_gerrit_bazlets//tools:javadoc.bzl", "java_doc")
21+
22+
java_doc(
23+
name = "blame-cache-javadoc",
24+
libs = [
25+
":blame-cache",
26+
"//lib:guava",
27+
"//lib/jgit:jgit",
28+
],
29+
pkgs = ["com.google.gitiles.blame"],
30+
title = "Blame Cache API Documentation",
31+
visibility = ["//visibility:public"],
32+
)
33+
34+
DEPS = [
35+
":blame-cache",
36+
"//lib:autolink",
37+
"//lib:commons-lang3",
38+
"//lib:gson",
39+
"//lib:guava",
40+
"//lib:html-types",
41+
"//lib:joda-time",
42+
"//lib:jsr305",
43+
"//lib:commonmark",
44+
"//lib:cm-autolink",
45+
"//lib:gfm-tables",
46+
"//lib:gfm-strikethrough",
47+
"//lib:prettify",
48+
"//lib/jgit:jgit",
49+
"//lib/jgit:jgit-servlet",
50+
"//lib/slf4j:slf4j-api",
51+
"//lib/soy:soy",
52+
]
53+
54+
DEPS_ALL = DEPS + [
55+
"//lib/jgit:jgit-archive",
56+
"//lib/guice:guice",
57+
]
58+
59+
java_library(
60+
name = "servlet-api",
61+
neverlink = 1,
62+
exports = ["//lib:servlet-api_2_5"],
63+
)
64+
65+
java_library(
66+
name = "servlet",
67+
srcs = glob(
68+
["**/*.java"],
69+
exclude = BLAME_CACHE_SRCS,
70+
),
71+
resource_strip_prefix = "resources",
72+
resources = ["//resources/com/google/gitiles"],
73+
visibility = ["//visibility:public"],
74+
deps = DEPS_ALL + [
75+
":servlet-api",
76+
],
77+
)
78+
79+
load("@com_googlesource_gerrit_bazlets//tools:javadoc.bzl", "java_doc")
80+
81+
java_doc(
82+
name = "servlet-javadoc",
83+
libs = DEPS + [
84+
":servlet",
85+
],
86+
pkgs = ["com.google.gitiles"],
87+
title = "Gitiles API Documentation",
88+
visibility = ["//visibility:public"],
89+
)

Diff for: gitiles-dev/BUILD renamed to java/com/google/gitiles/dev/BUILD

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
java_library(
22
name = "lib",
3-
srcs = glob(["src/main/java/**/*.java"]),
3+
srcs = glob(["**/*.java"]),
44
visibility = ["//visibility:public"],
55
deps = [
6-
"//gitiles-servlet:servlet",
6+
"//java/com/google/gitiles:servlet",
77
"//lib:guava",
88
"//lib:html-types",
99
"//lib:servlet-api_3_0",

Diff for: gitiles-dev/src/main/java/com/google/gitiles/dev/DevServer.java renamed to java/com/google/gitiles/dev/DevServer.java

+2-2
Original file line numberDiff line numberDiff line change
@@ -131,7 +131,7 @@ private Handler appHandler() {
131131
STATIC_PREFIX,
132132
Arrays.asList(cfg.getStringList("gitiles", null, "customTemplates")),
133133
sourceRoot
134-
.resolve("gitiles-servlet/src/main/resources/com/google/gitiles/templates")
134+
.resolve("resources/com/google/gitiles/templates")
135135
.toString(),
136136
firstNonNull(cfg.getString("gitiles", null, "siteTitle"), "Gitiles"));
137137

@@ -151,7 +151,7 @@ private Handler appHandler() {
151151

152152
private Handler staticHandler() throws IOException {
153153
Path staticRoot =
154-
sourceRoot.resolve("gitiles-servlet/src/main/resources/com/google/gitiles/static");
154+
sourceRoot.resolve("resources/com/google/gitiles/static");
155155
ResourceHandler rh = new ResourceHandler();
156156
try {
157157
rh.setBaseResource(new PathResource(staticRoot.toUri().toURL()));

Diff for: javatests/com/google/gitiles/BUILD

+45
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,45 @@
1+
DEPS = [
2+
"//lib:gson",
3+
"//lib:guava",
4+
"//lib/jgit:jgit",
5+
"//lib/jgit:jgit-servlet",
6+
"//lib:joda-time",
7+
"//lib/soy:soy",
8+
]
9+
10+
java_library(
11+
name = "testutil",
12+
srcs = glob(
13+
["**/*.java"],
14+
exclude = ["**/*Test.java"],
15+
) + glob(["**/ServletTest.java"]),
16+
deps = DEPS + [
17+
"//java/com/google/gitiles:servlet",
18+
"//lib:servlet-api_2_5",
19+
"//lib:truth",
20+
"//lib/jgit:junit",
21+
"//lib/junit",
22+
],
23+
)
24+
25+
load("@com_googlesource_gerrit_bazlets//tools:junit.bzl", "junit_tests")
26+
27+
junit_tests(
28+
name = "servlet_tests",
29+
srcs = glob(
30+
[
31+
"**/*Test.java",
32+
],
33+
exclude = ["**/ServletTest.java"],
34+
),
35+
visibility = ["//visibility:public"],
36+
runtime_deps = ["//lib/junit:hamcrest-core"],
37+
deps = DEPS + [
38+
"//java/com/google/gitiles:servlet",
39+
":testutil",
40+
"//lib:servlet-api_2_5",
41+
"//lib:truth",
42+
"//lib/jgit:junit",
43+
"//lib/junit",
44+
],
45+
)

Diff for: gitiles-war/BUILD renamed to resources/BUILD

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
filegroup(
22
name = "web_xml",
3-
srcs = ["src/main/resources/web.xml"],
3+
srcs = ["web.xml"],
44
visibility = ["//visibility:public"],
55
)

Diff for: resources/com/google/gitiles/BUILD

+27
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
load(
2+
"@com_googlesource_gerrit_bazlets//tools:genrule2.bzl",
3+
"genrule2",
4+
)
5+
6+
filegroup(
7+
name = "gitiles",
8+
srcs = glob(
9+
["**/*"],
10+
exclude = ["BUILD"],
11+
),
12+
visibility = ["//visibility:public"],
13+
)
14+
15+
genrule2(
16+
name = "webassets",
17+
srcs = [":gitiles"],
18+
outs = ["webassets.zip"],
19+
cmd = " && ".join([
20+
"o=$$PWD/$@",
21+
"tar cf - $(SRCS) | tar -C $$TMP/ --strip-components=1 -xf -",
22+
"cd $$TMP/com/google/gitiles/",
23+
"mv static +static",
24+
"zip -qr $$o .",
25+
]),
26+
visibility = ["//visibility:public"],
27+
)
File renamed without changes.

Diff for: tools/bazlets.bzl

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
NAME = "com_googlesource_gerrit_bazlets"
22

33
def load_bazlets(
4-
commit,
4+
commit = None,
55
local_path = None
66
):
77
if not local_path:

Diff for: tools/eclipse/BUILD

+3-3
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,8 @@ load("@com_googlesource_gerrit_bazlets//tools:classpath.bzl", "classpath_collect
22
load("@com_googlesource_gerrit_bazlets//tools:py_binary_path.bzl", "py_binary_path")
33

44
DEPS = [
5-
"//gitiles-servlet:servlet",
6-
"//gitiles-dev:lib",
5+
"//java/com/google/gitiles:servlet",
6+
"//java/com/google/gitiles/dev:lib",
77
]
88

99
java_library(
@@ -15,7 +15,7 @@ classpath_collector(
1515
name = "main_classpath_collect",
1616
testonly = 1,
1717
deps = DEPS + [
18-
"//gitiles-servlet:servlet_tests",
18+
"//javatests/com/google/gitiles:servlet_tests",
1919
],
2020
)
2121

0 commit comments

Comments
 (0)