yesod-mirror/tools/helm_deps.bzl
Copybara 8157b39ea4
Some checks failed
CI / build (push) Failing after 12s
Project import generated by Copybara.
GitOrigin-RevId: 6370f6ea785709295b6abcf9c60717cacf3ac432
2026-01-20 21:26:21 +00:00

31 lines
934 B
Python

load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")
def _helm_deps_impl(ctx):
# 1. Read the lockfile
lockfile_content = ctx.read(ctx.path(Label("//third_party/helm:chartfile.lock.json")))
lock = json.decode(lockfile_content)
# 2. Iterate over charts
for name, info in lock.get("charts", {}).items():
# name is like "grafana/grafana"
# repo_name will be "helm_grafana_grafana"
repo_name = "helm_" + name.replace("/", "_").replace("-", "_")
chart_name = name.split("/")[1]
http_archive(
name = repo_name,
url = info["url"],
sha256 = info["digest"],
strip_prefix = chart_name,
build_file_content = """
filegroup(
name = "chart",
srcs = glob(["**"]),
visibility = ["//visibility:public"],
)
""",
)
helm_deps = module_extension(
implementation = _helm_deps_impl,
)