V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
ooo4
V2EX  ›  Node.js

github action 的 pnpm --filter 和本地执行不一致?

  •  
  •   ooo4 · Jan 25, 2024 · 1865 views
    This topic created in 825 days ago, the information mentioned may be changed or developed.

    Release.yml

    name: Release
    
    on:
      push:
        tags:
          - 'v*'
    
    jobs:
      release:
        name: Release
        runs-on: ubuntu-latest
    
        steps:
          - name: Checkout Branch
            uses: actions/checkout@v4
    
          - name: Install pnpm
            uses: pnpm/action-setup@v2
            with:
              version: 8
    
          - name: Use Node.js 20
            uses: actions/setup-node@v4
            with:
              node-version: 20
              cache: pnpm
    
          - name: Display dir tree
            run: pnpm run buildBefore
    
          - name: Install Dependencies
            run: pnpm install
    
          - name: Build Packages
            run: pnpm run build
    
          - name: Publish to npm
            id: changesets
            uses: changesets/action@v1
            with:
              publish: pnpm changeset publish
            env:
              GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
              NPM_TOKEN: ${{ secrets.NPM_TOKEN }}
    
    

    github actions log

    > @ build /home/runner/work/linzhe-tools/linzhe-tools
    > rm -rf dist && pnpm run -r --filter ./packages/* build:src && pnpm run build:Dist
    
    None of the selected packages has a "./packages/linzhe-tools" script
    

    本地 log

    > @ build D:\study\linzhe-tools
    > rm -rf dist && pnpm run -r --filter ./packages/* build:src && pnpm run build:Dist
    
    Scope: 3 of 6 workspace projects
    

    github actions 会出现一个莫名其妙的脚本“./packages/linzhe-tools”,说找不到

    2 replies    2024-01-28 20:11:55 +08:00
    ooo4
        1
    ooo4  
    OP
       Jan 25, 2024
    pnpm run -r --filter ./packages/* build:src 改成 pnpm run -r --filter=./packages/* build:src ,filter 的参数改成“=”就可以了🤯
    kemchenj
        2
    kemchenj  
       Jan 28, 2024
    看起来像是 ./packages/* 被 shell 展开了?加了个双引号括住它试试

    pnpm run -r --filter "./packages/*" build:src
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   3672 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 39ms · UTC 04:38 · PVG 12:38 · LAX 21:38 · JFK 00:38
    ♥ Do have faith in what you're doing.