Rush Stack商店博客活动
跳至主要内容

环境变量

Rush 工具的行为可以使用下面描述的 shell 环境变量进行自定义

如果此变量设置为 1,Rush 将创建具有绝对路径的符号链接,而不是相对路径。这在构建期间移动存储库或将存储库的一部分移动到沙盒时可能很有必要。

RUSH_ALLOW_UNSUPPORTED_NODEJS

如果此变量设置为 1,Rush 将不会在运行与 rush.jsonnodeSupportedVersionRange 字段中指定的条件不匹配的 Node 版本时使构建失败。

RUSH_ALLOW_WARNINGS_IN_SUCCESSFUL_BUILD

设置此环境变量将覆盖 command-line.json 配置文件中的 allowWarningsInSuccessfulBuild 值。指定 1 允许在成功的构建中出现警告,或 0 禁止警告。(有关更多信息,请参阅 command-line.json 文件中的注释)。

RUSH_BUILD_CACHE_CREDENTIAL(实验性)

此环境变量由实验性的 构建缓存 功能使用。

提供用于访问远程构建缓存的凭据(如果已配置)。此凭据会覆盖任何缓存的凭据。

设置此环境变量将覆盖使用 rush update-cloud-credentials 保存到本地云缓存凭据中的任何凭据。

如果 Azure Blob Storage 用于存储缓存条目,则这必须是作为查询参数序列化为的 SAS 令牌。有关 SAS 令牌的详细信息,请参阅 这篇文章

RUSH_BUILD_CACHE_ENABLED(实验性)

此环境变量由实验性的 构建缓存 功能使用。

设置此环境变量将覆盖 build-cache.json 配置文件中的 buildCacheEnabled 值。指定 1 以启用构建缓存或 0 以禁用它。

如果设置为 0,则等效于传递 --disable-build-cache 标志。

如果没有配置构建缓存,则会忽略此环境变量。

RUSH_BUILD_CACHE_WRITE_ALLOWED(实验性)

此环境变量由实验性的 构建缓存 功能使用。

覆盖 build-cache.json 配置文件中的 isCacheWriteAllowed 值。此环境变量的值必须为 1(表示真)或 0(表示假)。如果没有配置构建缓存,则会忽略此环境变量。

RUSH_COBUILD_CONTEXT_ID(实验性)

Cobuild 管道必须定义此环境变量;如果没有定义,Rush 将执行常规构建,不会执行任何 cobuild 逻辑。有关详细信息,请参阅 Cobuilds 文档。

RUSH_COBUILD_LEAF_PROJECT_LOG_ONLY_ALLOWED(实验性)

当使用 cobuild 功能但 Rush 构建缓存无法用于依赖关系图中的“叶子”项目时,这很有用。(例如,公共库启用了构建缓存,但使用这些库的应用程序没有启用。)通常,由于我们无法从缓存中获取这些项目,因此所有 cobuild 机器都将被迫构建该项目。如果我们的目标是验证项目是否成功构建,而不是部署它,则这样做效率低下。

RUSH_COBUILD_LEAF_PROJECT_LOG_ONLY_ALLOWED 设置为 1 将导致 Rush 对禁用构建缓存的叶子项目使用特殊的“仅日志文件”缓存。日志文件会被缓存并显示在其他 cobuild 机器上,但项目内容不会被缓存或还原。有关详细信息,请参阅 Cobuilds 文档。

RUSH_COBUILD_RUNNER_ID(实验性)

此环境变量用于唯一标识每个 cobuild 机器。如果未定义此变量,Rush 将在每次运行时生成随机标识符。有关详细信息,请参阅 Cobuilds 文档。

RUSH_DEPLOY_TARGET_FOLDER

此环境变量可用于指定 rush deploy 命令的 --target-folder 参数。

RUSH_GIT_BINARY_PATH

明确指定由某些 Rush 操作调用的 Git 二进制文件的路径。

RUSH_TAR_BINARY_PATH

明确指定由某些 Rush 操作调用的 tar 二进制文件的路径。

RUSH_GLOBAL_FOLDER

覆盖 Rush 用于存储临时文件的 ~/.rush 全局文件夹的位置。

Rush 创建的大多数临时文件都单独存储在每个单一仓库工作文件夹中,以避免并发和工具版本之间兼容性问题。但是,一小部分文件(例如 @microsoft/rush-lib 引擎和包管理器的安装)存储在全局文件夹中,以加快安装速度。默认位置是 POSIX 类操作系统上的 ~/.rush 或 Windows 上的 C:\Users\YourName

使用 RUSH_GLOBAL_FOLDER 指定不同的文件夹路径。例如,如果 Windows 组策略禁止在用户的 home 目录中执行安装的脚本,这将很有用。

(POSIX 是电气和电子工程师协会 (IEEE) 的注册商标。)

RUSH_INVOKED_FOLDER

当 Rush 执行 shell 脚本时,它有时会将工作目录更改为项目文件夹或存储库根文件夹。原始工作目录(调用 Rush 命令的位置)被分配到子进程的 RUSH_INVOKED_FOLDER 环境变量,以备脚本需要使用它时。

RUSH_INVOKED_FOLDER 变量与包管理器在执行生命周期脚本时分配的 INIT_CWD 变量具有相同的理念。

RUSH_PARALLELISM

指定构建期间要启动的最大并发进程数。有关更多信息,请参阅 rush build--parallelism 参数的命令行帮助。

RUSH_PNPM_STORE_PATH

使用 PNPM 作为包管理器时,此变量可用于配置 PNPM 将用作存储目录的路径。

如果使用相对路径,则存储路径将相对于进程的当前工作目录解析。建议使用绝对路径。

RUSH_PREVIEW_VERSION

此变量会覆盖版本选择器将安装的 Rush 版本。默认值由 rush.json 中的 rushVersion 字段确定。

例如,如果你想在升级你的仓库之前试用 Rush 的不同版本,你可以这样分配变量

# This is Bash's syntax; for Windows shell, change "export" to be "set"
export RUSH_PREVIEW_VERSION=5.0.0-dev.25

rush install

RUSH_TEMP_FOLDER

此变量会覆盖 Rush 使用的临时文件夹。默认值为仓库根目录下的 **common/temp**。

此环境变量与工作区安装(useWorkspaces = true)不兼容。如果尝试移动 PNPM 存储路径,请参阅 RUSH_PNPM_STORE_PATH 环境变量。

RUSH_VARIANT

此变量选择一个特定的安装变体,供 Rush 在安装和链接包依赖项时使用。

有关此功能的更多信息,请参阅 安装变体