TraceMachina/nativelink

🍦 Document NativeLink for users coming from icecream

开放

#1,299 创建于 2024年8月30日

 (0 条评论) (2 个反应) (0 位负责人)Rust (222 个派生)auto 404
documentationhelp wanted

仓库指标

星标
 (1,557 个星标)
PR 合并指标
 (PR 指标待抓取)

描述

Icecream is a compile job distribution setup for legacy build systems.

The way it roughly works is to intercept the PATH on the host via symlinks that override various tools such as clang via symlinks https://github.com/icecc/icecream/blob/9d397ef13508053802fb5048a92e92b918e5c32e/client/Makefile.am#L53.

While the K8s examples are the "recommended" approach, they require knowing K8s which seems like an unreasonable expectation for users that are used to getting distributed compilation by prefixing PATH.

Fortunately, NativeLink supports a similarly simple setup by running native workers on machines that previously ran iceccd and a scheduler on the node that previously ran icecc-scheduler. However, this is not clearly documented and users shouldn't have to learn how the nativelink config works if all they're trying to do is run a scheduler and some native workers.

We should provide documentation and canned config JSONs for users coming from icecream to make using NativeLink as accessible as possible. An "If you're coming from icecream" section or similar in the docs should solve this issue.

cc @allada @blakehatch @adam-singer

贡献者指南