Bazel 使用构建系统运行测试或与集群交互
下面这些使用Bazel的项目的目的是什么,而不是构建软件Bazel 使用构建系统运行测试或与集群交互,bazel,Bazel,下面这些使用Bazel的项目的目的是什么,而不是构建软件 它们只是方便地为run命令提供了环境(与构建可移植可执行文件相反),还是我遗漏了什么 据我所知,Bazel只能用于运行E2E测试的子集,这取决于所改变的知识。免责声明:我对k8s和docker只有粗略的了解 Bazel不仅用于构建和测试,还可以部署,正如您在这些项目中发现的规则一样 我能说的最好的一点是,根据所改变的知识,Bazel只能用于运行E2E测试的子集 正确,但也将测试扩展到部署。如果您只更改了注入图像的Go二进制文件中的
run
命令提供了环境(与构建可移植可执行文件相反),还是我遗漏了什么
据我所知,Bazel只能用于运行E2E测试的子集,这取决于所改变的知识。免责声明:我对k8s和docker只有粗略的了解 Bazel不仅用于构建和测试,还可以部署,正如您在这些项目中发现的规则一样 我能说的最好的一点是,根据所改变的知识,Bazel只能用于运行E2E测试的子集 正确,但也将测试扩展到部署。如果您只更改了注入图像的Go二进制文件中的单个字符串,Bazel可以使用rules_k8s、rules_docker和rules_Go to:
bazel运行两次或更多次
有关更多信息,请查看2017年BazelCon讲座:
有趣的事实:从0.15.0开始,您还可以使用bazel run
为构建目标启动REPL。规则就是这么用的。免责声明:我对k8s和docker只有粗略的了解
Bazel不仅用于构建和测试,还可以部署,正如您在这些项目中发现的规则一样
我能说的最好的一点是,根据所改变的知识,Bazel只能用于运行E2E测试的子集
正确,但也将测试扩展到部署。如果您只更改了注入图像的Go二进制文件中的单个字符串,Bazel可以使用rules_k8s、rules_docker和rules_Go to:
以增量和重复的方式将最小文件集重建为
构建新的Go可执行文件
创建包含Go可执行文件的新图像层(不使用Docker)
将图像推送到注册表
将已更改的pod重新部署到群集
值得注意的是,如果不更改源文件,Bazel将始终创建具有相同摘要的图像,因为它具有可复制性。这意味着您现在可以相信部署工作流不会重新部署/重新启动pod,即使您执行bazel运行两次或更多次
有关更多信息,请查看2017年BazelCon讲座:
有趣的事实:从0.15.0开始,您还可以使用bazel run
为构建目标启动REPL。规则就是这样