全部产品
Search
文档中心

云效:缓存设置

更新时间:Apr 27, 2025

本文主要介绍了流水线缓存设置。

Flow 流水线每个任务节点都会创建新的构建环境,并在构建完后销毁。为解决依赖反复下载的问题,Flow 提供了缓存功能,用户可自定义缓存目录,实现任务多次运行的缓存共享。

例如:在 Node.js 构建任务执行npm install时,会在项目中生成./node_modules,而缓存在/root/.npm中,可以将/root/.npm保存起来方便下次加速下载。

设置缓存目录

在流水线编辑页, 选择变量与缓存 > 缓存,您可在此页面设置缓存目录

重要

Flow 主要解决任务多次运行间的依赖下载问题,不支持同一次运行中任务间的缓存共享。

  • Flow 默认缓存以下目录,可按需开启/关闭默认缓存目录,按需修改缓存目录。

    管理工具

    缓存目录

    Maven

    /root/.m2

    Gradle

    /root/.gradle/caches

    NPM

    /root/.npm

    yarn

    /root/.yarn

    go mod

    /go/pkg/mod

    其他缓存

    /root/.cache

  • 支持添加自定义缓存目录,自定义缓存目录需满足以下规则:

    • 不允许填写//root/root/workspace及其子目录。

      如需缓存/root/workspace下的某个目录或文件,可以将其复制到/root下其他目录并设置为缓存目录。

      如下图所示:

      image.png

      高的 (39)

      image.png

    • 不允许包含..,例如/root/abc/..为非法文件目录。

    • 必须为合法文件目录,例如/root/%\&dfaf为非法文件目录。

构建任务使用缓存

缓存目录设置好后,流水线执行时可以使用相应构建命令参数指定是否优先使用缓存。

  • npm 构建时,使用以下命令安装依赖包:

    // 构建中优先使用缓存中
    npm install --prefer-offline --no-audit
  • yarn 构建时,使用以下命令安装依赖包:

    // 构建中优先使用缓存中
    yarn install --prefer-offline