web-dev-qa-db-ja.com

Travis CIでgrunt buildコマンドを実行する

Travis CIを使用してプロジェクトのテストとビルドを行っていますが、その一部としてtravisを実行したいですgrunt build私は以下を試しましたが、うまくいきませんでした。

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

必ずインストールしましたかgrunt-cli Travisノードでグローバルに?

私のTravis CI構成は次のようになります。

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が実行するステップのフローを説明します。

  1. 実行される最初のステップはbefore_install。私の唯一の前提条件(node.js以外)はgrunt-cliそのため、この手順を使用してインストールします。
  2. 次はinstallステップです。私の場合、これは単にnpmモジュールをインストールするだけです。
  3. before scriptが実行され、grunt build
  4. 最後に、Travisはpackage.jsonでスクリプトを探します。そこで、テストステップを実行する必要があることを示しましたgrunt test

これは、Travisの構成方法に関する私自身の意見です。私は確かにあなたがまったく同じアプローチを使うべきだと言っているわけではありません。

108
thomaux

Travis.ymlファイルを見逃している可能性があります。

before_script:
  - npm install -g grunt-cli

次に、「何でもグラント」でokを実行します(package.jsonのdevDependenciesでグラントが必要であると想定します)。

http://www.mattgoldspink.co.uk/2013/02/10/using-travis-ci-with-grunt-0-4-x/ を参照)

8
Mangled Deutz

私の.travis.ymlは次のようになります。

npmパッケージマネージャーとしてNodeJSよりもはるかに高速に実行されます。この例ではYarnを使用しています。 yarngrunt cliRubyおよびsassをインストールします。

うまくいけば、それが役立ちます。


  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
0
Thiago Lima

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 
...
[email protected] node_modules/grunt
...

私の場合、私はjshintをうなり声で実行したいと思いました。これが私のtravis.ymlファイルです: https://github.com/fraxedas/raspi-cloud/blob/master/.travis.yml

グラントを統合するために必要なのは次のとおりです。

before_script: grunt jshint

Jshintは別のコマンドで変更できます。

0
Oscar Fraxedas