I am trying to deploy my Play application to Heroku.
Unfortunatelly, I am getting this issue:
2016-03-06T14:19:45.939373+00:00 heroku[web.1]: State changed from starting to crashed
2016-03-06T14:19:45.918504+00:00 heroku[web.1]: Process exited with status 255
2016-03-06T14:49:45.477844+00:00 heroku[web.1]: State changed from crashed to starting
2016-03-06T14:49:49.783812+00:00 heroku[web.1]: Starting process with command `target/universal/stage/bin/todolistscala -Dhttp.port=12681`
2016-03-06T14:49:51.431641+00:00 app[web.1]: Setting JAVA_TOOL_OPTIONS defaults based on dyno size. Custom settings will override them.
2016-03-06T14:49:51.599056+00:00 app[web.1]: Picked up JAVA_TOOL_OPTIONS: -Xmx350m -Xss512k -Dfile.encoding=UTF-8
2016-03-06T14:49:54.014919+00:00 app[web.1]: [[37minfo[0m] application - Creating Pool for datasource 'default'
2016-03-06T14:49:54.492047+00:00 app[web.1]: [[37minfo[0m] p.a.d.DefaultDBApi - Database [default] connected at jdbc:h2:mem:play
2016-03-06T14:49:57.727928+00:00 app[web.1]: [[33mwarn[0m] application - application.conf @ file:/app/target/universal/stage/conf/application.conf: 348: applyEvolutions.default is deprecated, use play.evolutions.db.default.autoApply instead
2016-03-06T14:49:58.246865+00:00 app[web.1]: [[31merror[0m] p.a.l.c.CryptoConfigParser - The application secret has not been set, and we are in prod mode. Your application is not secure.
2016-03-06T14:49:58.247105+00:00 app[web.1]: [[31merror[0m] p.a.l.c.CryptoConfigParser - To set the application secret, please read http://playframework.com/documentation/latest/ApplicationSecret
2016-03-06T14:49:58.258404+00:00 app[web.1]: [[31merror[0m] p.a.l.c.CryptoConfigParser - The application secret has not been set, and we are in prod mode. Your application is not secure.
2016-03-06T14:49:58.258431+00:00 app[web.1]: [[31merror[0m] p.a.l.c.CryptoConfigParser - To set the application secret, please read http://playframework.com/documentation/latest/ApplicationSecret
2016-03-06T14:49:58.258933+00:00 app[web.1]: [[31merror[0m] p.a.l.c.CryptoConfigParser - The application secret has not been set, and we are in prod mode. Your application is not secure.
2016-03-06T14:49:58.259062+00:00 app[web.1]: [[31merror[0m] p.a.l.c.CryptoConfigParser - To set the application secret, please read http://playframework.com/documentation/latest/ApplicationSecret
2016-03-06T14:49:58.293455+00:00 app[web.1]: [[37minfo[0m] application - ApplicationTimer demo: Starting application at 2016-03-06T14:49:58.259Z.
2016-03-06T14:49:58.294643+00:00 app[web.1]: [[31merror[0m] p.a.l.c.CryptoConfigParser - The application secret has not been set, and we are in prod mode. Your application is not secure.
2016-03-06T14:49:58.294826+00:00 app[web.1]: [[31merror[0m] p.a.l.c.CryptoConfigParser - To set the application secret, please read http://playframework.com/documentation/latest/ApplicationSecret
2016-03-06T14:49:58.297164+00:00 app[web.1]: [[31merror[0m] p.a.l.c.CryptoConfigParser - The application secret has not been set, and we are in prod mode. Your application is not secure.
2016-03-06T14:49:58.297222+00:00 app[web.1]: [[31merror[0m] p.a.l.c.CryptoConfigParser - To set the application secret, please read http://playframework.com/documentation/latest/ApplicationSecret
2016-03-06T14:49:58.297271+00:00 app[web.1]: [[31merror[0m] p.a.l.c.CryptoConfigParser - The application secret has not been set, and we are in prod mode. Your application is not secure.
2016-03-06T14:49:58.297976+00:00 app[web.1]: [[31merror[0m] p.a.l.c.CryptoConfigParser - To set the application secret, please read http://playframework.com/documentation/latest/ApplicationSecret
2016-03-06T14:49:58.303328+00:00 app[web.1]: Oops, cannot start the server.
2016-03-06T14:49:58.305408+00:00 app[web.1]: @6pba2k59a: Configuration error
2016-03-06T14:49:58.305742+00:00 app[web.1]: at play.api.libs.crypto.CryptoConfigParser.get$lzycompute(Crypto.scala:498)
2016-03-06T14:49:58.305830+00:00 app[web.1]: at play.api.libs.crypto.CryptoConfigParser.get(Crypto.scala:465)
2016-03-06T14:49:58.305890+00:00 app[web.1]: at play.api.libs.crypto.CryptoConfigParser.get(Crypto.scala:463)
2016-03-06T14:49:58.305953+00:00 app[web.1]: at com.google.inject.internal.ProviderInternalFactory.provision(ProviderInternalFactory.java:81)
2016-03-06T14:49:58.306059+00:00 app[web.1]: at com.google.inject.internal.BoundProviderFactory.provision(BoundProviderFactory.java:72)
Since there is an error involving the Application Secret, I read this: https://www.playframework.com/documentation/2.5.x/ApplicationSecret. However, I didn't understand how I can send a secret key to the server environment without having it on my local machine.
But anyway, I'm not sure that not having an Application Secret is the actual cause of the issue since the server can not be started(I would assume the server can be started even if I don't have an Application Secret).
What is the cause of this failure?