当我在 Github Actions 上运行
npm ci
时,我收到错误:
Run npm ci
npm ERR! bindings not accessible from watchpack-chokidar2:fsevents
npm ERR! A complete log of this run can be found in:
npm ERR! /home/runner/.npm/_logs/2021-09-17T15_18_42_465Z-debug.log
Error: Process completed with exit code 1.
可以是什么?
我的
.github/workflows/eslint.yaml
name: ESLint
on: [push, pull_request]
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Use Node.js
uses: actions/setup-node@v1
with:
node-version: '14.x'
- run: npm ci
- run: npm run lint
我的
package.json
{
"name": "@blinktrade/uikit",
"version": "1.0.0",
"main": "dist/index.js",
"license": "MIT",
"devDependencies": {
"@babel/plugin-transform-react-jsx": "^7.14.9",
"@babel/preset-env": "^7.15.6",
"@babel/preset-react": "^7.14.5",
"@babel/preset-typescript": "^7.15.0",
"@storybook/addon-essentials": "^6.3.8",
"@storybook/react": "^6.3.8",
"@testing-library/jest-dom": "^5.14.1",
"@testing-library/react": "^12.1.0",
"@testing-library/user-event": "^13.2.1",
"@types/jest": "^27.0.1",
"@types/react": "^17.0.21",
"@typescript-eslint/eslint-plugin": "^4.31.1",
"@typescript-eslint/parser": "^4.31.1",
"eslint": "^7.32.0",
"eslint-plugin-react": "^7.25.2",
"husky": "^7.0.2",
"jest": "^27.2.0",
"prettier": "^2.4.1",
"pretty-quick": "^3.1.1",
"react": "^17.0.2",
"react-dom": "^17.0.2",
"rimraf": "^3.0.2",
"typescript": "^4.4.3"
},
"husky": {
"hooks": {
"pre-push": "npm run lint",
"pre-commit": "pretty-quick --staged"
}
},
"scripts": {
"build": "tsc -p .",
"clear": "rimraf dist/",
"format": "prettier '**/*' --write --ignore-unknown",
"lint": "eslint --max-warnings=0 .",
"storybook": "start-storybook -p 4000",
"test": "jest"
}
}
解决了删除packages-lock.json并使用NodeJS 14(是10)再次运行的问题
actions/setup-node@v1
必须在GitHub操作和构建package-lock.json
的本地环境中具有相同的版本。就我而言,GitHub 操作指向 node 14
。
- uses: actions/setup-node@v1
with:
node-version: "14"
将其更改为
16
后 - 与我在本地环境中的情况相同 - 它解决了问题。
就我而言,尽管工作了一段时间并且
node_version
与我的本地 Node 版本匹配,但奇怪的是,我的测试突然开始失败。只需在我的 GitHub Action 工作流程中将其更新为 16 即可修复问题并导致测试再次开始运行:
steps:
- uses: actions/checkout@v3
- uses: actions/setup-node@v3
with:
node-version: 16
对我来说帮助更新了节点版本
在构建图像设置中我添加了“Node.js version 16.15”包。它帮助了我!
对我来说跑步
npm audit fix
解决了我的问题。