在Travis CI上运行grunt build命令

我正在使用Travis CI来testing和构build我的项目,作为它的一部分,我想要travis运行grunt build我已经尝试了以下,但没有运气。

  • script: "grunt build"
  • script: "./node_modules/grunt build"
  • script: "./node_modules/grunt/grunt build"
  • script: "./node_modules/grunt/grunt.js build"

你确定要在你的Travis节点上全局安装grunt-cli吗?

我的Travis CIconfiguration如下所示:

 language: node_js node_js: - "0.8" before_install: npm install -g grunt-cli install: npm install before_script: grunt build 

和我的package.json:

 { ... "scripts": { "test": "grunt test" }, ... } 

我将解释Travis将执行的步骤stream程:

  1. 要执行的第一步是before_install 。 我唯一的先决条件(除了node.js)是grunt-cli所以我使用这一步来安装它。
  2. 接下来是install步骤,在我的情况下,这将简单地安装我的npm模块
  3. 然后执行before script ,运行grunt build
  4. 最后,Travis将在package.json中查找脚本,在那里我指出testing步骤应该运行grunt test

我想指出,这是我个人对如何configurationTravis的看法。 我当然不倾斜你应该使用完全相同的方法。

你可能会错过你的travis.yml文件:

 before_script: - npm install -g grunt-cli 

然后“咕噜什么”应该执行好(假设你在你的package.json devDependencies中需要grunt)。

(见http://www.mattgoldspink.co.uk/2013/02/10/using-travis-ci-with-grunt-0-4-x/

确保你有咕噜声作为你devDependencies的一部分。 这里是一个示例文件: https : //github.com/fraxedas/raspi-cloud/blob/master/package.json

 "devDependencies": { "grunt": "^0.4.5", "grunt-contrib-jshint": "^0.11.2", "grunt-contrib-watch": "^0.6.1" } 

Travis-ci将在安装步骤中安装grunt:

 npm install ... grunt@0.4.5 node_modules/grunt ... 

就我而言,我想用grunt运行jshint。 这是我的travis.yml文件: https : //github.com/fraxedas/raspi-cloud/blob/master/.travis.yml

为了整合所有我需要的是:

 before_script: grunt jshint 

您可以通过另一个命令来更改jshint。

我的.travis.yml如下所示:

它比npm包pipe理器的运行速度快得多,我在这个例子中使用了Yarn 。 它安装yarngrunt clirubysass

希望它有帮助。

language: node_js node_js: - "7.1.0" before_install: - npm install -g yarn - yarn add global ruby - gem install sass install: - yarn add global sass - yarn add global grunt-cli - yarn add yarn install before_script: grunt
language: node_js node_js: - "7.1.0" before_install: - npm install -g yarn - yarn add global ruby - gem install sass install: - yarn add global sass - yarn add global grunt-cli - yarn add yarn install before_script: grunt