Как использовать резолверы rules_k8s с Typescript и Nodejs?

Проблема

Я попытался воспроизвести пример преобразователя rules_k8s с помощью Typescript вместо Go.

load("@npm//@bazel/typescript:index.bzl", "ts_library")
load("@io_bazel_rules_k8s//k8s:object.bzl", "k8s_object")
load("@build_bazel_rules_nodejs//:index.bzl", "nodejs_binary")

ts_library(
    name = "resolver_lib",
    srcs = ["resolver.ts"],
    deps = ["@npm//@types/node"],
)

nodejs_binary(
    name = "resolver",
    data = [":resolver_lib"],
    entry_point = "resolver.ts",
)

k8s_object(
    name = "example",
    kind = "deployment",
    resolver = ":resolver",
    template = "template.yaml",
)

Но двоичный файл Nodejs не запускается при запуске bazelisk run //:example. Выдается следующая ошибка:

ERROR: cannot find build_bazel_rules_nodejs/third_party/github.com/bazelbuild/bazel/tools/bash/runfiles/runfiles.bash

Размножение

Я сделал минимальное "воспроизведение" здесь: https://github.com/flolu/rules_k8s-typescript-resolver Просто клонируйте его и запускайте yarn install а потом yarn start

0 ответов

Другие вопросы по тегам