2016-12-05 8 views
0

私のアプリケーションで複数の展開スクリプトを必要とするHeroku Buttonをセットアップしようとしました。それをそれぞれの隣に置く方法を知らない。herokuボタンでpostdeployスクリプトを実行する方法

ヘルプ!してください

ここ

実行スクリプト&規模dynos

Postdeploy Eでの私のここapp.json

{ 
    "name": "App on Heroku", 
    "description": "The App deployable to Heroku.", 
    "keywords": [ 
    "App", 
    "Heroku" 
    ], 
    "repository": "https://github.com/myaccount/myapp", 
    "logo": "http://node-js-sample.herokuapp.com/node.svg", 
    "addons": [ 
    "heroku-postgresql", 
    "postmark" 
    ], 
    "scripts": { 
    "postdeploy": [ 
     "bundle exec rake db:migrate", 
     "bundle exec rake db:seed", 
     "bundle exec my_sample:load" 
     ] 
    } 
} 

エラーメッセージXITコードは、これは私のために働いていない0

bash: ((: bundle exec rake db:migrate,bundle exec rake db:seed,bundle exec my_sample:load: syntax error in expression (error token is "exec rake db:migrate,bundle exec rake db:seed,bundle exec my_sample:load") 
+0

私はあなたが複数のスクリプトを実行することができるとは思いません – Akshay

答えて

0

た:

  1. は(通常、これはあなたのルートディレクトリである必要があり、あなたのapp.jsonファイルと同じディレクトリにあるmyscript.shと呼ばれるbashの/ shスクリプトを作成します。 )。
  2. あなたのコマンドは、ターミナルで呼び出すのと同じ方法でそのファイルに置きます。
  3. app.jsonファイルのスクリプトを参照してください(下記参照)
  4. スクリプトに正しい権限があることを確認してください。好ましくは、実行chmod +x myscript.sh

マイapp.jsonファイル:

{ 
    ... 
    "scripts": { 
    "postdeploy": "./myscript.sh" 
    } 
} 

myscript.shファイル:

#!/bin/sh 

bundle exec rake db:migrate 
bundle exec rake db:seed 
bundle exec my_sample:load 
関連する問題