ede*_*ded 6 github npm lerna monorepo github-actions
在运行 Github 操作的工作流期间,Lerna 无法正确检测包更改。
如果我不做任何与包相关的更改,请提交并在lerna updated本地运行。它告诉我没有找到正确和预期的更改包。
如果我进行了与包相关的更改,请在lerna updated本地提交并运行。它告诉我找到了x 准备发布的包,这也是正确和预期的。
但是,如果我基于1 or 2. 我lerna updated在 github 操作工作流中运行的步骤总是告诉/列出所有可以发布的包,哪个是错误的。
我想知道为什么以及如何解决它???
如果我没有进行任何与软件包相关的更改,这是我在本地看到的
lerna notice cli v3.20.2
lerna info versioning independent
lerna info Looking for changed packages since @xxx/bar@2.3.4
lerna info No changed packages found
Run Code Online (Sandbox Code Playgroud)
这是我在将与非包相关的更改推送到 Github 后在工作流日志中看到的内容
> lerna updated -l
lerna notice cli v3.20.2
lerna info versioning independent
lerna info Assuming all packages changed
@xxx/bar v2.3.4 packages/Bar
@xxx/foo v1.4.4 packages/Foo
@xxx/hulk v1.0.4 packages/Hulk
lerna success found 3 packages ready to publish
Run Code Online (Sandbox Code Playgroud)
这是我的工作流程
name: Publish
on:
push:
branches:
- master
jobs:
unit-test:
name: UnitTest
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions/setup-node@v1
with:
node-version: 12
- run: npm ci
- run: npm test
publish:
name: Publish NPM Packages
needs: unit-test
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions/setup-node@v1
with:
node-version: 12
registry-url: https://registry.npmjs.org/
- run: npm ci
- run: git config --global user.email "xxx"
- run: git config --global user.name "xxx"
- run: npm run updated
env:
NODE_AUTH_TOKEN: ${{secrets.NPM_AUTH_TOKEN}}
Run Code Online (Sandbox Code Playgroud)
这是我的 package.json
{
"name": "root",
"devDependencies": {
"jest": "^25.1.0",
"lerna": "^3.20.2"
},
"scripts": {
"updated": "lerna updated -l",
"test": "jest"
}
}
Run Code Online (Sandbox Code Playgroud)
这是我的 lerna 设置
{
"packages": [
"packages/*"
],
"version": "independent",
"command": {
"publish": {
"allowBranch": "master",
"conventionalCommits": true,
"message": "chore(release): updated release notes and package versions"
}
}
}
Run Code Online (Sandbox Code Playgroud)
哇 - 简直不敢相信我终于找到了解决同一问题的方法 - 非常感谢!
我认为这是 github 操作(特别是 @actions/checkout)的一个大问题,因此我已在此处通知他们:https : //github.com/actions/checkout/issues/217
我也在lerna这里通知了人们:https : //github.com/lerna/lerna/issues/2542
和semantic-release这里的人:https : //github.com/semantic-release/semantic-release/issues/1526
再次感谢!你帮我节省了很多时间并解决了一个烦人的问题,我希望我也能帮助其他人。干杯
| 归档时间: |
|
| 查看次数: |
4299 次 |
| 最近记录: |