开发工具分享
  • 首页
  • 计算科学
  • 文化旅游
  • 项目和网站
    • OSSEZ 计算技术
    • USRealEstate 社区
    • 地区文化
    • CWIKI.US
    • BUG.OSSEZ.COM
    • RSS.OSSEZ.COM
CWIKIUS.CN
一个有独立思考和温度的清新站
  1. Home
  2. Computer Science
  3. This article

Pnpm approve-builds --all Jenkins 第一次构建总是出错

2026年06月02日 4Browse 0Like 0Comments

出现的问题:

sh ‘pnpm approve-builds --all’ 在 sh ‘pnpm install --no-frozen-lockfile’ 前面的时候第一次构建总是出错。

 

2026-05-3109-33-38

 

但第二次构建的时候就成功。

处理

是正常现象:pnpm approve-builds --all 必须在 已经有 pending/ignored build scripts 之后才有东西可批准。

第一次构建时你把它放在 pnpm install --no-frozen-lockfile 前面,它还不知道哪些依赖需要跑 build script,所以批准不到任何包;随后 install 才发现并拦截这些脚本,导致首次构建失败。

pnpm 文档说明 approve-builds 是批准依赖在安装期间运行脚本,批准项会写入 onlyBuiltDependencies。--all 是批准所有 pending builds。

推荐顺序:

pnpm install --no-frozen-lockfile
pnpm approve-builds --all
pnpm rebuild
pnpm build

核心原因:approve-builds 不是“预先允许所有未来依赖”,而是“批准当前已被 pnpm 发现、正在等待批准的 build scripts”。

如果你的 Agent 是全新的(Docker/K8s Pod 每次重建),可以:

pipeline {
    agent any

    stages {
        stage('Install') {
            steps {
                sh '''
                    corepack enable

                    # 第一次安装,生成 pending builds
                    pnpm install --no-frozen-lockfile || true

                    # 自动批准
                    pnpm approve-builds --all

                    # 重新执行安装
                    pnpm install --no-frozen-lockfile
                '''
            }
        }

        stage('Build') {
            steps {
                sh 'pnpm build'
            }
        }
    }
}

最终使用的脚本是添加一个 Stage

        stage("Install") {
            steps {
                sh '''
                    pnpm install --no-frozen-lockfile || true
                    pnpm approve-builds --all
                    pnpm install --no-frozen-lockfile
                '''
            }
        }

 

2026-05-3109-37-58
https://www.isharkfly.com/t/pnpm-approve-builds-all-jenkins/10046

 

Tags: None
Last updated:2026年06月02日

HoneyMoose

有温度的人文和独立的思考

Like
< Previous

Comments

Cancel reply

Archives
  • June 2026
  • May 2026
  • April 2026
  • March 2026
  • February 2026
  • January 2026
  • December 2025
  • November 2025
  • October 2025
  • September 2025
  • August 2025
  • July 2025
  • June 2025
  • May 2025
  • April 2025
  • March 2025
  • February 2025
  • January 2025
  • December 2024
  • November 2024
  • October 2024
  • September 2024
  • August 2024
  • July 2024
  • June 2024
  • May 2024
  • April 2024
  • March 2024
  • February 2024
  • January 2024
  • December 2023
  • November 2023
  • October 2023
  • September 2023
  • August 2023
  • July 2023
  • June 2023
  • May 2023
  • April 2023
  • December 2022
  • November 2022
  • October 2022
  • September 2022
  • August 2022
  • May 2022
  • April 2022
  • March 2022
  • February 2022
  • January 2022
  • December 2021
  • November 2021
  • October 2021
  • September 2021
  • August 2021
  • July 2021
  • June 2021
  • May 2021
  • April 2021
  • March 2021
  • February 2021
  • January 2021
  • December 2020
  • November 2020
  • October 2020
  • September 2020
  • August 2020
  • July 2020
  • June 2020
  • May 2020
  • April 2020
  • March 2020
  • February 2020
  • January 2020
  • December 2019
  • November 2019
  • October 2019
  • September 2019
  • August 2019
  • July 2019
  • June 2019
  • May 2019
  • April 2019
  • March 2019
  • February 2019
  • January 2019
  • December 2018
  • November 2018
  • October 2018
  • September 2018
  • August 2018
  • July 2018
  • June 2018
  • May 2018
  • April 2018
  • March 2018
Categories
  • Computer Science (2,365)
    • Confluence (663)
    • Gradle (12)
  • U.S. (503)
  • 文化旅游 (146)

COPYRIGHT © 2020 CWIKIUS. ALL RIGHTS RESERVED.

THEME KRATOS MADE BY VTROIS

湘ICP备2020018253号-1