rails_app.json 2.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475
  1. {
  2. "id": "my_app",
  3. "server_roles": [
  4. "application specific role(s), typically the name of the app, e.g., my_app",
  5. "my_app"
  6. ],
  7. "type": {
  8. "my_app": [
  9. "recipes in this application cookbook to run for this role",
  10. "rails",
  11. "unicorn"
  12. ]
  13. },
  14. "memcached_role": [
  15. "name of the role used for the app-specific memcached server",
  16. "my_app_memcached"
  17. ],
  18. "database_slave_role": [
  19. "name of the role used by database slaves, typically named after the app, 'my_app_database_slave'",
  20. "my_app_database_slave"
  21. ],
  22. "database_master_role": [
  23. "name of the role used by database master, typically named after the app 'my_app_database_master'",
  24. "my_app_database_master"
  25. ],
  26. "repository": "git@github.com:company/my_app.git",
  27. "revision": {
  28. "production": "commit hash, branch or tag to deploy"
  29. },
  30. "force": {
  31. "production": "true or false w/o quotes to force deployment, see the rails.rb recipe"
  32. },
  33. "migrate": {
  34. "production": "true or false boolean to force migration, see rails.rb recipe"
  35. },
  36. "databases": {
  37. "production": {
  38. "reconnect": "true",
  39. "encoding": "utf8",
  40. "username": "db_user",
  41. "adapter": "mysql",
  42. "password": "awesome_password",
  43. "database": "db_name_production"
  44. }
  45. },
  46. "mysql_root_password": {
  47. "production": "password for the root user in mysql"
  48. },
  49. "mysql_debian_password": {
  50. "production": "password for the debian-sys-maint user on ubuntu/debian"
  51. },
  52. "mysql_repl_password": {
  53. "production": "password for the 'repl' user for replication."
  54. },
  55. "snapshots_to_keep": {
  56. "production": "if using EBS, integer of the number of snapshots we're going to keep for this environment."
  57. },
  58. "deploy_key": "SSH private key used to deploy from a private git repository",
  59. "deploy_to": "path to deploy, e.g. /srv/my_app",
  60. "owner": "owner for the application files when deployed",
  61. "group": "group for the application files when deployed",
  62. "packages": {
  63. "package_name": "specific packages required for installation at the OS level to run the app like libraries and specific version, e.g.",
  64. "curl": "7.19.5-1ubuntu2"
  65. },
  66. "gems": {
  67. "gem_name": "specific gems required for installation to run the application, and if a specific version is required, e.g.",
  68. "rails": "2.3.5"
  69. },
  70. "memcached": {
  71. "production": {
  72. "namespace": "specify the memcache namespace, ie my_app_environment"
  73. }
  74. }
  75. }