blob: 73216fcf04cd027b8e8ddd806599747a72cb0728 [file]
"""rules_ocx — Bazel module extension provisioning tools via the OCX package manager.
OCX (https://ocx.sh) resolves, downloads, and composes tool packages from OCI
registries. rules_ocx bootstraps a pinned `ocx` CLI binary and shells out to it
from repository rules — it never re-implements OCX internals in Starlark.
"""
module(
name = "rules_ocx",
version = "0.1.3",
)
bazel_dep(name = "bazel_skylib", version = "1.9.0")
bazel_dep(name = "platforms", version = "1.0.0")
bazel_dep(name = "rules_shell", version = "0.6.1", dev_dependency = True)
bazel_dep(name = "stardoc", version = "0.8.0", dev_dependency = True)
bazel_dep(name = "buildifier_prebuilt", version = "8.2.0.2", dev_dependency = True)
ocx = use_extension("//ocx:extensions.bzl", "ocx")
use_repo(ocx, "ocx_tool")
# Dogfooding: rules_ocx provisions its own dev toolchain from ocx.toml.
# dev_dependency keeps these tags out of consumer builds (project tags are
# root-module-only).
ocx_dev = use_extension("//ocx:extensions.bzl", "ocx", dev_dependency = True)
ocx_dev.project(
name = "dev_tools",
ocx_lock = "//:ocx.lock",
ocx_toml = "//:ocx.toml",
)
use_repo(ocx_dev, "dev_tools")