詹金斯与格兰特的整合



我已经在Windows Server 2008 R2上安装了Jenkins v1.550。目前,它作为服务在http://localhost:8080上运行。我以管理员身份登录到该机器。我已经安装了Node.js,可以从命令行运行"npm"。

我还为Jenkins安装了NodeJS插件v0.2.1。然后,我进入Jenkins的配置系统部分,向下滚动到NodeJS安装,单击添加NodeJS按钮,将"NodeJS"作为名称,将"C:\Program Files\NodeJS"作为安装目录的路径。我没有检查"自动安装"选项,因为我在插件页面上看到它只适用于Linux。

然后,我创建了一个新的作业,点击复选框,上面写着"将节点和npm bin/folder提供给PATH",为"执行Windows批处理命令"创建了新的构建步骤,并键入"节点-版本"one_answers"grunt-版本"并保存了它。

我运行了作业,这是输出-

Building in workspace C:Program Files (x86)JenkinsworkspaceTest_1.0
[Test_1.0] $ cmd /c call C:WindowsTEMPhudson1381541243088903083.bat
C:Program Files (x86)JenkinsworkspaceTest_1.0>node --version 
v0.10.24
C:Program Files (x86)JenkinsworkspaceTest_1.0>grunt --version 
'grunt' is not recognized as an internal or external command,
operable program or batch file.
C:Program Files (x86)JenkinsworkspaceTest_1.0>exit 9009 
Build step 'Execute Windows batch command' marked build as failure
Finished: FAILURE

看起来无法找到Jenkins在(System)下运行的用户帐户的grunt cli。我尝试在全局(npm install -g grunt-cli)和本地(npm install grunt)上安装grunt cli。运气不好。

有人能帮忙吗?

为了在机器上轻松配置自安装的nodejs,我不得不推荐优秀的->http://wiki.jenkins-ci.org/display/JENKINS/NodeJS+插件

它将在机器上安装nodejs和grunt,通过易于使用的web前端无需外壳的

然后jenkinsjobs可以简单地运行nodejs构建步骤,嘿,presto

涉及的步骤:

a) 将其安装在您的jenkins实例上->http://wiki.jenkins-ci.org/display/JENKINS/NodeJS+插件

b) 在jenkins 上创建nodejs安装

转到

http://URL_OF_JENKINS/jenkins/configure
  • NodeJS->NodeJS安装->添加NodeJS->Name="NodeJS 0.11.10",勾选"自动安装",选择"从NodeJS.org安装",在全局安装的包中添加"grunt cli">

c)使用"执行NodeJS脚本"构建任务创建作业

var sys = require('sys');
sys.puts('NodeJS Test');
sys.puts('***************');
sys.puts('helloworld');

volia:)

运行作业并查看nodejs脚本的运行,

从他们的世界就是你的牡蛎,你可以通过勾选"将节点/npm-bin文件夹提供给PATH"并运行"执行shell"构建任务来使用grunt

npm update
grunt
grunt --force reporting

安装节点后,您需要重新启动Jenkins服务,大概是为了让它刷新PATH环境变量的缓存副本

我在Jenkins帮我做了一些任务,但我走了npm脚本路线。Grunt和Grunt-cli是开发依赖项,我在package.json文件中定义了以下内容:

"scripts": {
"test": "node node_modules/grunt-cli/bin/grunt test"
},

在Jenkins(在Windows上运行)中,我添加了两个构建后任务:

npm install
npm test

我们刚刚在Jenkins服务器上正常安装了NodeJ。

在Windows上对我有用的另一个解决方案是使用grunt-exec文件的完整路径,可以通过在命令shell中写入"where grunt"来找到该文件。我使用了常规bat文件中的完整路径。

在Windows上也有同样的问题。当我手动安装node并从命令行运行npm install-ggrunt cli时,jenkins无法识别grunt命令。所以卸载节点,重新安装它,但不要运行npm安装。然后重新启动jenkins slave。然后,从运行在特定jenkins slave上的jenkins作业中,使其运行一个Windows批处理命令,该命令运行npm install-grunt cli。之后,再次重新启动jenkins服务。然后从作业运行npm install。然后一切都对我有效。如果问题仍然存在,请卸载slave并重新安装,然后一切都会立即正常。

相关内容

  • 没有找到相关文章

最新更新