1*d6050574SRomain Jobredeauxmodule( 2*d6050574SRomain Jobredeaux name = "rules_testing", 3*d6050574SRomain Jobredeaux version = "0.0.1", 4*d6050574SRomain Jobredeaux compatibility_level = 1, 5*d6050574SRomain Jobredeaux) 6*d6050574SRomain Jobredeaux 7*d6050574SRomain Jobredeauxbazel_dep(name = "platforms", version = "0.0.6") 8*d6050574SRomain Jobredeauxbazel_dep(name = "bazel_skylib", version = "1.3.0") 9*d6050574SRomain Jobredeauxbazel_dep(name = "rules_license", version = "0.0.4") 10*d6050574SRomain Jobredeaux 11*d6050574SRomain Jobredeaux# ===== The rest of these are development dependencies ===== 12*d6050574SRomain Jobredeaux 13*d6050574SRomain Jobredeaux# TODO(https://github.com/bazelbuild/stardoc/issues/117): stardoc doesn't yet 14*d6050574SRomain Jobredeaux# work with bzlmod enabled. This defines the repo so load() works. 15*d6050574SRomain Jobredeauxbazel_dep( 16*d6050574SRomain Jobredeaux name = "stardoc", 17*d6050574SRomain Jobredeaux version = "0.5.6", 18*d6050574SRomain Jobredeaux dev_dependency = True, 19*d6050574SRomain Jobredeaux repo_name = "io_bazel_stardoc", 20*d6050574SRomain Jobredeaux) 21*d6050574SRomain Jobredeauxbazel_dep(name = "rules_python", version = "0.22.0", dev_dependency = True) 22*d6050574SRomain Jobredeaux 23*d6050574SRomain Jobredeauxpython = use_extension( 24*d6050574SRomain Jobredeaux "@rules_python//python/extensions:python.bzl", 25*d6050574SRomain Jobredeaux "python", 26*d6050574SRomain Jobredeaux dev_dependency = True, 27*d6050574SRomain Jobredeaux) 28*d6050574SRomain Jobredeauxpython.toolchain( 29*d6050574SRomain Jobredeaux name = "python_3_11", 30*d6050574SRomain Jobredeaux python_version = "3.11", 31*d6050574SRomain Jobredeaux) 32*d6050574SRomain Jobredeaux 33*d6050574SRomain Jobredeaux# NOTE: use_repo() must be called for each platform that runs the docgen tools 34*d6050574SRomain Jobredeauxuse_repo( 35*d6050574SRomain Jobredeaux python, 36*d6050574SRomain Jobredeaux "python_3_11_toolchains", 37*d6050574SRomain Jobredeaux "python_3_11_x86_64-unknown-linux-gnu", 38*d6050574SRomain Jobredeaux) 39*d6050574SRomain Jobredeaux 40*d6050574SRomain Jobredeaux# NOTE: This is actually a dev dependency, but due to 41*d6050574SRomain Jobredeaux# https://github.com/bazelbuild/bazel/issues/18248 it has to be non-dev to 42*d6050574SRomain Jobredeaux# generate the repo name used in the subsequent register_toolchains() call. 43*d6050574SRomain Jobredeaux# Once 6.2 is the minimum supported version, the register_toolchains 44*d6050574SRomain Jobredeaux# call can use dev_dependency=True and this can go away entirely. 45*d6050574SRomain Jobredeauxdev = use_extension( 46*d6050574SRomain Jobredeaux "//:dev_extension.bzl", 47*d6050574SRomain Jobredeaux "dev", 48*d6050574SRomain Jobredeaux) 49*d6050574SRomain Jobredeauxuse_repo(dev, "rules_testing_dev_toolchains") 50*d6050574SRomain Jobredeaux 51*d6050574SRomain Jobredeaux# NOTE: This call will be run by downstream users, so the 52*d6050574SRomain Jobredeaux# repos it mentions must exist. 53*d6050574SRomain Jobredeauxregister_toolchains( 54*d6050574SRomain Jobredeaux "@rules_testing_dev_toolchains//:all", 55*d6050574SRomain Jobredeaux dev_dependency = True, 56*d6050574SRomain Jobredeaux) 57*d6050574SRomain Jobredeaux 58*d6050574SRomain Jobredeauxinterpreter = use_extension( 59*d6050574SRomain Jobredeaux "@rules_python//python/extensions:interpreter.bzl", 60*d6050574SRomain Jobredeaux "interpreter", 61*d6050574SRomain Jobredeaux dev_dependency = True, 62*d6050574SRomain Jobredeaux) 63*d6050574SRomain Jobredeauxinterpreter.install( 64*d6050574SRomain Jobredeaux name = "python_3_11_interpreter", 65*d6050574SRomain Jobredeaux python_name = "python_3_11", 66*d6050574SRomain Jobredeaux) 67*d6050574SRomain Jobredeauxuse_repo(interpreter, "python_3_11_interpreter") 68*d6050574SRomain Jobredeaux 69*d6050574SRomain Jobredeauxpip = use_extension( 70*d6050574SRomain Jobredeaux "@rules_python//python/extensions:pip.bzl", 71*d6050574SRomain Jobredeaux "pip", 72*d6050574SRomain Jobredeaux dev_dependency = True, 73*d6050574SRomain Jobredeaux) 74*d6050574SRomain Jobredeauxpip.parse( 75*d6050574SRomain Jobredeaux name = "docs-pypi", 76*d6050574SRomain Jobredeaux python_interpreter_target = "@python_3_11_interpreter//:python", 77*d6050574SRomain Jobredeaux requirements_lock = "//docs:requirements.txt", 78*d6050574SRomain Jobredeaux) 79*d6050574SRomain Jobredeauxuse_repo(pip, "docs-pypi") 80