2016-05-01 20 views
2

Eclipseで生産と開発のプロファイルを設定しようとしていますが、私のCompojure/RingアプリをHerokuに導入しようとしています。ただし、反時計回りのプラグインはプロファイルから環境変数をロードしません。環境変数タブに変数を追加し、REPLを再起動しましたが、変数はまだ使用できません。これは私がそれらを追加した方法です:environment variables反時計回りに環境変数を設定する

私はまたprofiles.cljする変数を追加することなく、無駄にしようとしている:

`:profiles 
    {:production 
     {:ring 
     {:open-browser? false, 
     :stacktraces? false, 
     :auto-reload? false} 
     :env {:port 3000 
      :db-url "//localhost/login" 
      :db-user "test" 
      :db-pass "test" 
      :galleries-path "test"}} 
     :dev 
     {:dependencies [[ring-mock "0.1.5"] 
         [ring/ring-devel "1.2.0"]] 
     :env {:port 3000 
       :db-url "//localhost/gallery" 
       :db-user "test" 
       :db-pass "testProd" 
       :galleries-path "galleries"}}}` 

答えて

0

あなたが環境を使用する場合、それは自動的に、より慣用的な:db-url"DB_URL"を強制します。環境の強制コードを見ると、問題はないようですが、環境タブで設定したすべての環境変数を大文字にして強調してみます。

+0

提案編集を行った後、私は次のようなエラーになっています:ここで 'db-spec {:password nil, :subprotocol "postgresql", :user nil, :subname nil} is missing a required parameter' を私のデシベルスペックです: '(def db {:subprotocol "postgresql" :subname (env :db-url) :user (env :db-user) :password (env :db-pass)})' 私はちょうど必要なパラメータが何であるかを知りません。 –

+0

おそらくゼロ値は欠けている値ですか? –

+0

あなたは正しいです。しかし、問題はゼロ値が欠落しているわけではなく、環境変数がどのように環境をどのように強制するかについてあなたの主張に戻って正しく評価されないということではありません。提案された変更後は、私のDB-specは次のようになります。 '(デフDB {:サブプロトコル "PostgreSQLの" :サブネーム(ENV:DB_URL) :ユーザー(ENV:DB_USER) :パスワード(ENV:DB_PASS)} ) ' 私は' db'を実行すると、私は次のような結果を得る: '=> DB {:サブプロトコル "のPostgreSQL"、 :サブネームはnil、 :ユーザーはnil、 :パスワードnilを}' –

関連する問題