@@ -22,6 +22,8 @@ build_targets_integration: &build_targets_integration
2222test_targets : &test_targets
2323 - " //test/..."
2424 - " //java/test/..."
25+ # linux-only tests
26+ - " -//test:check_remote_jdk_configs_test"
2527 # TODO: re-enable docs after moving them out of https://bazel.build/reference/be/java
2628 - " -//test:docs_up_to_date_test"
2729
@@ -38,146 +40,73 @@ flags_workspace_integration: &flags_workspace_integration
3840
3941buildifier : latest
4042
43+ matrix :
44+ all_platforms : ["ubuntu2004", "macos", "windows"]
45+ integration_platforms : ["ubuntu2004", "macos"] # TODO: add windows batch setup script
46+ bazel : ["7.4.0", "8.1.0", "last_green"] # Bazel 6 tested separately, needs different flags
47+ modern_bazel : ["8.1.0", "last_green"] # Fully supported Bazel versions
48+
4149tasks :
4250# Bazel 7.x
43- ubuntu2004_bazel7 :
44- name : " Bazel 7.x "
45- bazel : " 7.4 .0"
46- platform : ubuntu2004
51+ build_and_test_bazel7 :
52+ name : " Bazel 7.5.0 "
53+ bazel : " 7.5 .0"
54+ platform : ${{ all_platforms }}
4755 build_targets : *build_targets
4856 test_targets : *test_targets
4957 test_flags :
5058 - " --test_tag_filters=-min_bazel_8"
51- ubuntu2004_integration_bazel7 :
52- name : " Bazel 7.x Integration"
53- bazel : " 7.4.0"
54- platform : ubuntu2004
55- working_directory : " test/repo"
56- shell_commands :
57- - sh setup.sh
58- build_targets : *build_targets_integration
59- test_targets : *test_target_integration
60- ubuntu2004_integration_workspace_bazel7 :
61- name : " Bazel 7.x Integration (WORKSPACE)"
62- bazel : " 7.4.0"
63- platform : ubuntu2004
64- working_directory : " test/repo"
65- shell_commands :
66- - sh setup.sh
67- build_targets : *build_targets_integration
68- build_flags : *flags_workspace_integration
69- test_targets : *test_target_integration
70- test_flags : *flags_workspace_integration
71- macos_bazel7 :
72- name : " Bazel 7.x"
73- bazel : " 7.4.0"
74- platform : macos
75- build_targets : *build_targets
76- windows_bazel7 :
77- name : " Bazel 7.x"
78- bazel : " 7.4.0"
79- platform : windows
80- build_targets : *build_targets
81- # Bazel 8.x
82- ubuntu2004_bazel8 :
83- name : " Bazel 8.x"
84- bazel : " 8.1.0"
85- platform : ubuntu2004
59+ # Bazel 8+
60+ build_and_test :
61+ name : " Bazel {modern_bazel}"
62+ bazel : ${{ modern_bazel }}
63+ platform : ${{ all_platforms }}
8664 build_targets : *build_targets
8765 test_targets : *test_targets
88- ubuntu2004_integration_bazel8 :
89- name : " Bazel 8.x Integration "
90- bazel : " 8.1 .0"
91- platform : ubuntu2004
92- working_directory : " test/repo "
93- shell_commands :
94- - sh setup.sh
95- build_targets : *build_targets_integration
96- test_targets : *test_target_integration
97- ubuntu2004_integration_workspace_bazel8 :
98- name : " Bazel 8.x Integration (WORKSPACE) "
99- bazel : " 8.1.0 "
66+ # Bazel 6.x
67+ build_and_test_bazel6 :
68+ name : " Bazel 6.5 .0"
69+ bazel : 6.5.0
70+ platform : ${{ all_platforms }}
71+ build_targets : *build_targets_bazel6
72+ test_targets : *test_targets_bazel6
73+ test_flags :
74+ - " --test_tag_filters=-min_bazel_7,-min_bazel_8 "
75+ ubuntu2004_integration_bazel6 :
76+ name : " Integration w/ Bazel 6.5.0 "
77+ bazel : 6.5.0
10078 platform : ubuntu2004
10179 working_directory : " test/repo"
10280 shell_commands :
103- - sh setup.sh
81+ - sh setup.sh
10482 build_targets : *build_targets_integration
105- build_flags : *flags_workspace_integration
10683 test_targets : *test_target_integration
107- test_flags : *flags_workspace_integration
108- macos_bazel8 :
109- name : " Bazel 8.x"
110- bazel : " 8.1.0"
111- platform : macos
112- build_targets : *build_targets
113- windows_bazel8 :
114- name : " Bazel 8.x"
115- bazel : " 8.1.0"
116- platform : windows
117- build_targets : *build_targets
118- # Bazel@HEAD
119- ubuntu2004_head :
120- name : " Bazel@HEAD"
121- bazel : last_green
122- platform : ubuntu2004
123- build_targets : *build_targets
124- test_targets : *test_targets
125- ubuntu2004_integration_head :
126- name : " Bazel@HEAD Integration"
127- bazel : last_green
128- platform : ubuntu2004
84+
85+ # Integration tests
86+ integration_build_and_test :
87+ name : " Integration w/ Bazel {bazel}"
88+ bazel : ${{ bazel }}
89+ platform : ${{ integration_platforms }}
12990 working_directory : " test/repo"
13091 shell_commands :
131- - sh setup.sh
92+ - sh setup.sh
13293 build_targets : *build_targets_integration
13394 test_targets : *test_target_integration
134- ubuntu2004_integration_head_workspace :
135- name : " Bazel@HEAD Integration (WORKSPACE)"
136- bazel : " last_green "
137- platform : ubuntu2004
95+ integration_build_and_test_workspace :
96+ name : " Integration (WORKSPACE) w/ Bazel {bazel} "
97+ bazel : ${{ bazel }}
98+ platform : ${{ integration_platforms }}
13899 working_directory : " test/repo"
139100 shell_commands :
140- - sh setup.sh
101+ - sh setup.sh
141102 build_targets : *build_targets_integration
142103 build_flags : *flags_workspace_integration
143104 test_targets : *test_target_integration
144105 test_flags : *flags_workspace_integration
145- macos_head :
146- name : " Bazel@HEAD"
147- bazel : last_green
148- platform : macos
149- build_targets : *build_targets
150- windows_head :
151- name : " Bazel@HEAD"
152- bazel : last_green
153- platform : windows
154- build_targets : *build_targets
155-
156- # Bazel 6.x
157- ubuntu2004_bazel6 :
158- name : " Bazel 6.x"
159- bazel : 6.4.0
160- platform : ubuntu2004
161- build_targets : *build_targets_bazel6
162- test_targets : *test_targets_bazel6
163- test_flags :
164- - " --test_tag_filters=-min_bazel_7,-min_bazel_8"
165- ubuntu2004_integration_bazel6 :
166- name : " Bazel 6.x Integration"
167- bazel : 6.4.0
168- platform : ubuntu2004
169- working_directory : " test/repo"
170- shell_commands :
171- - sh setup.sh
172- build_targets : *build_targets_integration
173- test_targets : *test_target_integration
174- macos_bazel6 :
175- name : " Bazel 6.x"
176- bazel : 6.4.0
177- platform : macos
178- build_targets : *build_targets_bazel6
179- windows_bazel6 :
180- name : " Bazel 6.x"
181- bazel : 6.4.0
182- platform : windows
183- build_targets : *build_targets_bazel6
106+ # Linux-only tests
107+ linux_only_tests :
108+ name : " Extra tests w/ Bazel {bazel}"
109+ bazel : ${{ bazel }}
110+ platform : " ubuntu2004"
111+ test_targets :
112+ - " //test:check_remote_jdk_configs_test"
0 commit comments