Skip to content

Commit 6a395c3

Browse files
authored
Merge pull request #8753 from rabbitmq/rin/allow-rbe-overrides
Allow bazel modules depending on rabbitmq-server to override @rbe
2 parents d705f9d + 1e91bb7 commit 6a395c3

File tree

1 file changed

+18
-5
lines changed

1 file changed

+18
-5
lines changed

bazel/bzlmod/extensions.bzl

Lines changed: 18 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -96,6 +96,7 @@ elixir_config = module_extension(
9696
)
9797

9898
def _rbe(ctx):
99+
root_rbe_repo_props = []
99100
rbe_repo_props = []
100101
for mod in ctx.modules:
101102
for repo in mod.tags.git_repository:
@@ -106,17 +107,29 @@ def _rbe(ctx):
106107
props["tag"] = repo.tag
107108
if repo.branch != "":
108109
props["branch"] = repo.branch
109-
if not props in rbe_repo_props:
110+
if mod.is_root:
111+
if not props in root_rbe_repo_props:
112+
root_rbe_repo_props.append(props)
113+
elif not props in rbe_repo_props:
110114
rbe_repo_props.append(props)
111115

112-
if len(rbe_repo_props) > 1:
113-
fail("Multiple definitions for @rbe exist: {}".format(rbe_repo_props))
116+
if len(root_rbe_repo_props) > 1:
117+
fail("Multiple definitions for @rbe exist in root module: {}".format(rbe_repo_props))
114118

115-
if len(rbe_repo_props) > 0:
119+
if len(root_rbe_repo_props) > 0:
116120
git_repository(
117121
name = "rbe",
118-
**rbe_repo_props[0]
122+
**root_rbe_repo_props[0]
119123
)
124+
else:
125+
if len(rbe_repo_props) > 1:
126+
fail("Multiple definitions for @rbe exist: {}".format(rbe_repo_props))
127+
128+
if len(rbe_repo_props) > 0:
129+
git_repository(
130+
name = "rbe",
131+
**rbe_repo_props[0]
132+
)
120133

121134
git_repository_tag = tag_class(attrs = {
122135
"remote": attr.string(),

0 commit comments

Comments
 (0)