美文网首页
Bazel - 运行python

Bazel - 运行python

作者: 西博尔 | 来源:发表于2021-04-09 14:06 被阅读0次

基于ct.actions.run

1.在bzl中创建自定义rule

test.bzl

dh_binary = rule(
    implementation = _dh_impl, 
    attrs = {
        "_lib_hash": attr.label(
            default = Label("//universal:dh_test"),
            executable = True,
/*设置label是否是可执行的, default = False
True if the dependency has to be executable. This means the label must refer to an executable file, or to a rule that outputs an executable file. Access the label with ctx.executable.<attribute_name>.*/
            cfg = "exec",/*如果excutable这个就必须写, host和exec没发现有啥区别*/
        ),

    },
    
    outputs = {"out": "%{name}.out"},// 输出名字
)

def _dh_impl(ctx):
  
    tool = ctx.executable._lib_hash
    out = ctx.outputs.out

    ctx.actions.run(
        executable = tool,
        arguments = [out.path,"bbb"],
        inputs = [],
        tools = [tool],
        outputs = [out],
    )

2.在BUILD中实例化规则

load(":bl_dump.bzl", "bl_dump_binary")

bl_dump_binary(
    name = "bl_test",
)

命令行:
bazel build //universal:bl_test

3.遇到的问题

1.outputs如果写了就要生成对应文件 否则报错,不管是ctx.actions.write 还是ctx.actions.run 都要生成文件
2.default = Label("//universal:dh_test"),需要写对应脚本路径

相关文章

  • Bazel - 运行python

    基于ct.actions.run 1.在bzl中创建自定义rule test.bzl 2.在BUILD中实例化规则...

  • Jetson TX2 下安装Tensorflow

    环境:Ubuntu 16.04 Python 3.5.2 1 安装Bazel 1.1 安装工具 按照https:/...

  • 使用 proxy 解决 bazel WORKSPACE 中 ht

    最近的项目需要使用到bazel(1.0.0版本),在 bazel run 指令运行过程中发现程序需要下载一些资源包...

  • Bazel构建基础

    一、Bazel是什么 Bazel是一个构建工具,即一个可以运行编译和测试来组装软件的工具,跟Make、Ant、Gr...

  • [bazel]-如何缓存

    Change log 目录 [bazel]-导读[bazel]-概念和术语[bazel]-bazel的使用[baz...

  • [bazel]-如何编译

    Change log 目录 [bazel]-导读[bazel]-概念和术语[bazel]-bazel的使用[baz...

  • [bazel]-tulsi的使用

    Change log 目录 [bazel]-导读[bazel]-概念和术语[bazel]-bazel的使用[baz...

  • [bazel]-bazel的使用

    Change log 目录 [bazel]-导读[bazel]-概念和术语[bazel]-bazel的使用[baz...

  • [bazel]-导读

    Change log 目录 [bazel]-导读[bazel]-概念和术语[bazel]-bazel的使用[baz...

  • [bazel]-概念和术语

    Change log 目录 [bazel]-导读[bazel]-概念和术语[bazel]-bazel的使用[baz...

网友评论

      本文标题:Bazel - 运行python

      本文链接:https://www.haomeiwen.com/subject/sydbkltx.html