Jenkins CI在配置构建时集成了NodeJS和Github问题

时间:2016-02-10 12:29:15

标签: nginx github jenkins junit continuous-integration

我们已经构建了我们的第一个Nodejs应用程序,我希望将Jenkins集成为持续集成,我们在Nginx后面运行节点服务器作为Gitlab中的代理和源代码控制。我需要示例配置或步骤。 我在这里看任何doc或wiki链接,或者如果你能指出我正确的方向,它会有所帮助 我有CentOS服务器,并设法安装和配置詹金斯,但没有得到正确的方式来连接我的Gitlab服务器。我需要在每次构建后运行npm命令。如果有人已经这样做,请告诉我。

谢谢

1 个答案:

答案 0 :(得分:0)

你的问题仍然模糊,但我会在这里向你提供我如何使用Gitlab集成完成Jenkins NodeJs。我有CentOS 6并经过测试。

的步骤

应先安装Open Java。

以jenkins身份登录

  • sudo -s -H -u jenkins

现在在文件夹/var/lib/jenkins/.ssh中生成ssh密钥并将该密钥复制到gitlab

  • SSH-密钥生成

  • 在jenkins中安装Gitlab Hook插件和GitLab插件。

您将通过在浏览器中访问jenkins来创建项目 创建项目后,转到配置(左侧菜单)项目页面 有很多选项是自解释的 - 设置Git repo url 并设置邮件git browser url。

  • 在jenkins中创建一个新项目,并在构建触发器中添加git repo url 将更改推送到GitLab时选择Build。 GitLab CI服务URL:

构建触发器
 检查选项

  • 将更改推送到GitLab

  • 时构建
  • 将该网址粘贴到gitlab repo的webhooks设置中。

这是在构建

之后运行npm命令

有一个部分SSH Publisher

在exec命令部分(我已经举了我的例子,你可以编写命令)

    cd project_dir
    rm -rf public server package.json
    tar -xvf projectname.tgz 
    ls
    npm install --production
    export NODE_ENV=production 
    forever restartall
    jasmine-node spec/api/frisbyapi_spec.js 
    rm -rf projectname.tgz 

我已经写了大部分设置jenkins nodejs和gitlab的步骤。 我可能忘记了任何一步。如果您遇到任何错误,请发布。