2016-12-26 5 views
0

CLIを使用してRailsアプリケーションをElastic Beanstalkにデプロイしようとしています。レールアプリケーションは、細かい(資産のコンパイル、dbの移行など)を展開します。しかし、私はbower installを実行することができません。私はsudo npm install -g bowerを実行しようとしましたが、\ optにインストールされますが、bowerコマンドを実行しようとすると、bowerがシステムにインストールされているとは認識されません。npmとBowerの自動実行中にRailsアプリケーションをElastic Beanstalkにデプロイ

これらは私の質問です:

1)なぜ私のアプリのディレクトリからアクセスバウアーされていませんか? 2)EBが自動的にrake bower:installで実行されるようにするにはどうすればよいですか(アセットパイプラインと互換性があるようにbower-rails gemを使用しています) 3)パート2が上記のように動作するようにEBがnpmを自動的にインストールするように、どうすれば入手できますか?

ありがとう、うまくいけば私の質問は意味をなさない。 (AWSの新機能)

答えて

0

私はより良い解決策を見つけました。 Bower Railsの宝石を使用するのではなく、ルートディレクトリで標準のbower.jsonファイルを使用してください。その後

、configファイルを作成します。これは、Elastic Beanstalkでの事前フックを展開し利用し、前を実行するために、バウアーとbower installのインストールを可能に

files: 
    "/opt/elasticbeanstalk/hooks/appdeploy/pre/03_bower_install.sh": 
    mode: "000755" 
    owner: root 
    group: root 
    content: | 
     #!/usr/bin/env bash 
     echo "starting to install bower via npm" 
     sudo npm install bower -g --prefix /usr/local --allow-root 
     echo "starting to install git" 
     sudo yum install git 
     echo "changing directory to /var/app/ondeck" 
     cd /var/app/ondeck 
     ls 
     echo "running bower install" 
     sudo $(which bower) install --allow-root 

:次の内容の.ebextension /ルビーsettings.configをアセットのプリコンパイル。

+0

これは機能します。しかし、バウアー・インストール時には、eb throw 'events.js:72 throw er; //未処理の 'エラー'イベント 'エラー。誰でもそれを修正? – Penguin

関連する問題