Попытка собрать приложение Electron с помощью VSTS не приводит к ошибке «Пожалуйста, попробуйте снова запустить эту команду от имени пользователя root / Administrator». - PullRequest
0 голосов
/ 02 июля 2018

Использование VSTS для создания приложения Electron, но у меня продолжают возникать проблемы с задачами NPM:

Я не разработчик, я devops, пытаюсь заставить его встроить VSTS, запустив задачу VSTS установки npm, и это выглядит нормально, но затем я запускаю пользовательскую задачу npm, где моя команда npm run electron-build, а затем терпит неудачу.

Я использую это как администратор root, поэтому я не уверен, почему появляется это сообщение.

ТАКЖЕ: если я заскочил в виртуальную машину, в которой есть агент vsts, и запустил те же команды NPM, которые он создает, то только в том случае, если VSTS создает его, он выходит из строя.

вот вывод, который я получаю из VSTS

50375 verbose unlock done using C:\Users\LGBUILDADMIN\AppData\Roaming\npm-cache\_locks\staging-c7d6f0879aedfd51.lock for E:\Agents\LG-04\_work\244\s\node_modules\.staging
50376 verbose stack Error: EPERM: operation not permitted, scandir 'E:\Agents\LG-04\_work\244\s\node_modules\fsevents\node_modules\dashdash\node_modules'
50377 verbose cwd E:\Agents\LG-04\_work\244\s
50378 verbose Windows_NT 6.3.9600
50379 verbose argv "C:\\Program Files\\nodejs\\node.exe" "C:\\Users\\LGBUILDADMIN\\AppData\\Roaming\\npm\\node_modules\\npm\\bin\\npm-cli.js" "install"
50380 verbose node v8.11.1
50381 verbose npm  v5.5.1
50382 error path E:\Agents\LG-04\_work\244\s\node_modules\fsevents\node_modules\dashdash\node_modules
50383 error code EPERM
50384 error errno -4048
50385 error syscall scandir
50386 error Error: EPERM: operation not permitted, scandir 'E:\Agents\LG-04\_work\244\s\node_modules\fsevents\node_modules\dashdash\node_modules'
50386 error  { Error: EPERM: operation not permitted, scandir 'E:\Agents\LG-04\_work\244\s\node_modules\fsevents\node_modules\dashdash\node_modules'
50386 error   stack: 'Error: EPERM: operation not permitted, scandir \'E:\\Agents\\LG-04\\_work\\244\\s\\node_modules\\fsevents\\node_modules\\dashdash\\node_modules\'',
50386 error   errno: -4048,
50386 error   code: 'EPERM',
50386 error   syscall: 'scandir',
50386 error   path: 'E:\\Agents\\LG-04\\_work\\244\\s\\node_modules\\fsevents\\node_modules\\dashdash\\node_modules' }
50387 error Please try running this command again as root/Administrator.
50388 verbose exit [ -4048, true ]
Error: Npm failed with return code: 4294963248

Вот также package.json.

{ "name": "sds", "version": "0.0.0", "license": "MIT", "scripts": { "ng": "ng", "start": "ng serve", "build": "ng build --prod", "test": "ng test --sourceMap=false --watch", "lint": "ng lint", "e2e": "ng e2e", "tslint": "tslint -p tsconfig.json -e src/main.ts -e src/polyfills.ts -e src/test.ts -e e2e/src/*.ts", "format-all": "prettier --write **/*.{ts,js,css,scss,json}", "format": "pretty-quick --staged", "electron": "electron .", "electron-build": "ng build --prod --base-href ./ && electron .", "package-mac": "ng build --prod --base-href ./ && electron-packager . --overwrite --platform=darwin --arch=x64 --prune=true --out=release-builds", "package-win": "ng build --prod --base-href ./ && electron-packager . sds --overwrite --asar=false --platform=win32 --arch=ia32 --prune=true --out=release-builds --version-string.CompanyName=CE --version-string.FileDescription=CE --version-string.ProductName=\"SDS\"", "package-linux": "ng build --prod --base-href ./ && electron-packager . sds --overwrite --asar=false --platform=linux --arch=x64 --prune=true --out=release-builds" }, "private": true, "main": "main.js", "dependencies": { "@angular/cli": "6.0.0", "@angular/animations": "6.0.0", "@angular/common": "6.0.0", "@angular/compiler": "6.0.0", "@angular/core": "6.0.0", "@angular/forms": "6.0.0", "@angular/http": "6.0.0", "@angular/platform-browser": "6.0.0", "@angular/platform-browser-dynamic": "6.0.0", "@angular/router": "6.0.0", "@types/lodash": "^4.14.110", "angular-fastclick": "^1.0.4", "core-js": "^2.5.7", "hammerjs": "^2.0.8", "latest": "^0.2.0", "lodash": "^4.17.10", "rxjs": "^6.2.1", "shelljs": "^0.8.2", "zone.js": "^0.8.26" }, "devDependencies": { "@angular-devkit/build-angular": "^0.6.8", "@angular/cli": "6.0.0", "@angular/compiler-cli": "6.0.0", "@angular/language-service": "6.0.0", "@types/jasmine": "^2.8.8", "@types/jasminewd2": "~2.0.2", "@types/node": "^6.0.113", "codelyzer": "^4.4.2", "electron": "^1.8.7", "electron-packager": "^12.0.2", "husky": "^0.14.3", "jasmine-core": "~2.8.0", "jasmine-spec-reporter": "~4.2.1", "karma": "~2.0.0", "karma-chrome-launcher": "~2.2.0", "karma-coverage-istanbul-reporter": "^1.4.3", "karma-jasmine": "^1.1.2", "karma-jasmine-html-reporter": "^0.2.2", "npm-run-all": "^4.1.3", "prettier": "^1.13.7", "pretty-quick": "^1.6.0", "protractor": "~5.1.2", "ts-node": "~4.1.0", "tslint": "~5.9.1", "tslint-config-prettier": "^1.13.0", "typescript": "2.7.2" } }

1 Ответ

0 голосов
/ 09 июля 2018

Ответ на мой вопрос состоял в том, что я использовал неправильную команду cli и собирал, а затем немедленно запускал приложение, и это могло привести к истечению времени ожидания, так как приложение все еще работало в фоновом режиме. Я перешел на команду, которая будет только создавать приложение, и с тех пор это работает.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...