2016-07-04 11 views
0

Ich versuche, eine App auf Heroku zu schieben, wird es geschoben, aber keine meiner Vermögenswerte wird auf Heroku hochgeladen.Fehler bei der Produktion im Zusammenhang mit config.yml

Seine funktioniert alles gut vor Ort. So prüfe ich mit rails s -e --production und es gibt mir Fehler in secrets.yml

Es sagt

Fehlende secret_token und secret_key_base für '--production' Umwelt gesetzt, diese Werte in config/secrets.yml

Ich bin nicht sicher was es ist. Bitte helfen ..

Antwort

0

Ich glaube, dass für eine Heroku-App in der Produktion Rails erwartet die geheime Konfiguration zu existieren. Entfernen Sie die Zeile in Ihrem .gitignore, die verhindert, dass secrets.yml in der Versionskontrolle aktualisiert wird, und stellen Sie sicher, dass Sie ENV-Variablen für Ihre geheimen Token verwenden. Wenn Sie keine geheimen Tokens haben, die nicht nur Tests sind, dann sollten Sie sich keine Sorgen machen, aber wenn Sie das tun, können Sie Edelsteine ​​wie figaro verwenden, um Ihre Umgebungsvariablen zu konfigurieren, die Ihre Token von VCM fernhalten.

Edit: Wenn Sie in Ihrem Config-Verzeichnis suchen, sollten Sie eine Secrets.yml sehen, die mit Ihrer App generiert wurde. Innerhalb der App sollten Sie Ihre secret_key_base-Variablen innerhalb von Dev, Test und Produktion sehen. Innerhalb der Produktion, obwohl Sie haben sollten:

# Do not keep production secrets in the repository, 
# instead read values from the environment. 
production: 
    secret_key_base: <%= ENV["SECRET_KEY_BASE"] %> <- This being your Environment variable 
+0

gut, ich habe es funktioniert. Es war möglicherweise "Asset Precompile" und in meiner "production.rb" hatte ich "Asset Precompile" als falsch. Also, sobald ich es auf wahr änderte, funktioniert es jetzt für mich. Danke – Suraj

+0

Freut mich zu hören, dass es funktioniert. Letzte Person, die ich kannte, hatte diesen Fehler, es war das Thema, über das ich sprach. –

Verwandte Themen