diff --git a/python/extensions/BUILD.bazel b/python/extensions/BUILD.bazel index 12c0f248fe..50d2b3bbdf 100644 --- a/python/extensions/BUILD.bazel +++ b/python/extensions/BUILD.bazel @@ -47,5 +47,6 @@ bzl_library( deps = [ "//python/private:internal_config_repo_bzl", "//python/private/pypi:deps_bzl", + "@bazel_features//:features", ], ) diff --git a/python/extensions/config.bzl b/python/extensions/config.bzl index d8e621031e..f19a07aaef 100644 --- a/python/extensions/config.bzl +++ b/python/extensions/config.bzl @@ -1,5 +1,6 @@ """Extension for configuring global settings of rules_python.""" +load("@bazel_features//:features.bzl", "bazel_features") load("//python/private:internal_config_repo.bzl", "internal_config_repo") load("//python/private/pypi:deps.bzl", "pypi_deps") @@ -21,10 +22,10 @@ to repositories that are expensive to create or invalidate frequently. }, ) -def _config_impl(mctx): +def _config_impl(module_ctx): transition_setting_generators = {} transition_settings = [] - for mod in mctx.modules: + for mod in module_ctx.modules: for tag in mod.tags.add_transition_setting: setting = str(tag.setting) if setting not in transition_setting_generators: @@ -40,6 +41,11 @@ def _config_impl(mctx): pypi_deps() + if bazel_features.external_deps.extension_metadata_has_reproducible: + return module_ctx.extension_metadata(reproducible = True) + else: + return None + config = module_extension( doc = """Global settings for rules_python.