在Bamboo上持续集成和部署Node.js应用程序

时间:2014-05-30 06:50:02

标签: node.js continuous-integration npm bower bamboo

我想在Bamboo上实现持续部署的应用程序具有node modulesbower component依赖项。在竹子服务器nodejs上,已经安装了npm。

默认作业只有三个任务:

  1. 源代码检查
  2. 构建依赖项:

    npm install
    bower install
    
  3. 部署到登台服务器

  4. 问题在于第二个任务,竹子失败并显示消息“未找到失败的测试,可能发生编译错误”。我甚至没有进行任何测试。

    日志文件根本没有解释:

      

    启动任务'构建依赖关系',类型为'com.atlassian.bamboo.plugins.scripttask:task.builder.script'

         

    自[/ bin / sh /home/ubuntu/bamboo-installation/temp/WEB-WEB-JOB1-8-ScriptBuildTask-4430338079602360707.sh]的返回代码为1时失败,而预期为0

3 个答案:

答案 0 :(得分:2)

好的,我解决了这个问题。问题是在竹子服务器上安装了wrong node(显然搞砸了)。卸载错误的一个,一切都按预期工作。

答案 1 :(得分:2)

很高兴看到你解决了它。

我使用的设置可以防止CI的进一步问题:

export npm_config_prefix=.npm/
export PATH=.npm/bin:$PATH
export CI=true
npm install -g bower
bower install
npm install

这会在您的项目文件夹中安装 bower (以及其他类似grunt-cli),以便您可以在有一个特定的版本,按照 bower 文档中的建议设置CI=true,然后安装所有依赖项。

答案 2 :(得分:0)

Bamboo AMI最初安装了npm版本1.4.28,您可能在开发环境中使用了更新版本。我遇到了同样的问题并通过创建脚本任务来解决它,以便在构建过程的最初阶段更新npm版本。这是脚本:

# update npm
curl -O -L https://npmjs.org/install.sh
chmod +x install.sh
sudo PATH=$PATH:/opt/node-0.10/bin ./install.sh