I've previously used Heroku and AWS and am now setting up a service on the Google Cloud platform using App Engine and Cloud SQL (Postgres).
We've tried to build the app using 12 factor principles.
The setup has been proving so tedious that I'm starting to question if I've just fundamentally missed something.
Here's the things that just have me confused:
- Being encouraged to write passwords into a file that ends up in source control (app.yaml).
- Needing to hack a workaround for loading environment variables (if I don't want them committed to source control).
- Finding that to connect to the cloud sql instance I need a line referring to the specific instance in app.yaml - so now I need app.staging.yaml and app.production.yaml ?
- Finding that line only seems to support 1 DB instance and unclear if there is support if we want the app to connect to 2 DBs.
Have I missed some major development in server admin where these have become best practices? Having just discovered #3 & #4, I'm really starting to think I must've done something fundamentally wrong in my set up. Have I?