我正在嘗試在 docker 的硒網格上使用 Jenkins 作業從 git 運行硒測驗。
Job 應該得到 .js,它持有測驗并連接到網格。這個檔案應該在 jenkins 中使用 build 來執行。由于我將 nodeJS 與 selenium 一起使用,因此我需要 Jenkins 來獲取所有請求的 npm 包。
在 Jenkins 中,我下載了 nodeJS 插件并在Global Tool Configuration我填寫[email protected]的列中Global npm packages to install(nodeJS 版本我選擇了 18.1.0)
Job 成功獲取 git repo。在Build我有簡單的命令node login.js。
不幸的是,當我嘗試完成這項作業時,我仍然在MODULE NOT FOUND尋找 selenium-webdriver。
在來自構建的日志中有不同的模塊錯誤,因為我試圖node_modules/selenium-wedriver直接添加到 repo。但我想這不是正確的方法。
任何人都可以指出我正確的方向嗎?
Running as SYSTEM
Building in workspace /var/jenkins_home/workspace/sele-login
The recommended git tool is: NONE
using credential 34b86306-efa8-432e-92fb-63b586339585
> git rev-parse --resolve-git-dir /var/jenkins_home/workspace/sele-login/.git # timeout=10
Fetching changes from the remote Git repository
> git config remote.origin.url [email protected]:MrWolfcan/sele-test.git # timeout=10
Fetching upstream changes from [email protected]:MrWolfcan/sele-test.git
> git --version # timeout=10
> git --version # 'git version 2.30.2'
using GIT_SSH to set credentials test2
> git fetch --tags --force --progress -- [email protected]:MrWolfcan/sele-test.git refs/heads/*:refs/remotes/origin/* # timeout=10
Seen branch in repository origin/main
Seen 1 remote branch
> git show-ref --tags -d # timeout=10
Checking out Revision 4cb9f780e70818120c1128aad85b18c1f71ad4dd (origin/main)
> git config core.sparsecheckout # timeout=10
> git checkout -f 4cb9f780e70818120c1128aad85b18c1f71ad4dd # timeout=10
Commit message: "Add files via upload"
> git rev-list --no-walk 37e8fc5193006e5820cc66209c10a8f799478786 # timeout=10
[sele-login] $ /bin/sh -xe /tmp/jenkins11143974131067136179.sh
node login.js
node:internal/modules/cjs/loader:942
throw err;
^
Error: Cannot find module 'ws'
Require stack:
- /var/jenkins_home/workspace/sele-login/node_modules/selenium-webdriver/lib/webdriver.js
- /var/jenkins_home/workspace/sele-login/node_modules/selenium-webdriver/lib/http.js
- /var/jenkins_home/workspace/sele-login/node_modules/selenium-webdriver/http/index.js
- /var/jenkins_home/workspace/sele-login/node_modules/selenium-webdriver/index.js
- /var/jenkins_home/workspace/sele-login/login.js
at Module._resolveFilename (node:internal/modules/cjs/loader:939:15)
at Module._load (node:internal/modules/cjs/loader:780:27)
at Module.require (node:internal/modules/cjs/loader:1005:19)
at require (node:internal/modules/cjs/helpers:102:18)
at Object.<anonymous> (/var/jenkins_home/workspace/sele-login/node_modules/selenium-webdriver/lib/webdriver.js:33:19)
at Module._compile (node:internal/modules/cjs/loader:1105:14)
at Module._extensions..js (node:internal/modules/cjs/loader:1159:10)
at Module.load (node:internal/modules/cjs/loader:981:32)
at Module._load (node:internal/modules/cjs/loader:827:12)
at Module.require (node:internal/modules/cjs/loader:1005:19) {
code: 'MODULE_NOT_FOUND',
requireStack: [
'/var/jenkins_home/workspace/sele-login/node_modules/selenium-webdriver/lib/webdriver.js',
'/var/jenkins_home/workspace/sele-login/node_modules/selenium-webdriver/lib/http.js',
'/var/jenkins_home/workspace/sele-login/node_modules/selenium-webdriver/http/index.js',
'/var/jenkins_home/workspace/sele-login/node_modules/selenium-webdriver/index.js',
'/var/jenkins_home/workspace/sele-login/login.js'
]
}
Node.js v18.1.0
Build step 'Execute shell' marked build as failure
Finished: FAILURE
uj5u.com熱心網友回復:
所以我得到這個作業。
我唯一做的就是在 step execution 之前添加另一個Build step> 。Execute shell - npm installnode login.js
所以它正在做的(我想)是npm install它將嘗試從package.json每個構建中安裝包。
現在我要找出如何快取這個:)
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/479400.html
