{"id":21883174,"url":"https://github.com/eendroroy/ansible-rails-pg","last_synced_at":"2025-10-24T00:54:44.387Z","repository":{"id":71991882,"uuid":"106816634","full_name":"eendroroy/ansible-rails-pg","owner":"eendroroy","description":"Setup environment for deploying rails application on Debian/RPM based os.","archived":false,"fork":false,"pushed_at":"2019-01-08T03:46:55.000Z","size":219,"stargazers_count":12,"open_issues_count":0,"forks_count":2,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-04-15T06:08:56.201Z","etag":null,"topics":["ansible-playbook","centos7","postgresql","provisioning","rails","rhel7"],"latest_commit_sha":null,"homepage":"","language":"Ruby","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/eendroroy.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2017-10-13T11:35:11.000Z","updated_at":"2024-09-26T19:19:10.000Z","dependencies_parsed_at":null,"dependency_job_id":"121c341b-e385-4526-b35a-4dc3dd7ad8b3","html_url":"https://github.com/eendroroy/ansible-rails-pg","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/eendroroy%2Fansible-rails-pg","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/eendroroy%2Fansible-rails-pg/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/eendroroy%2Fansible-rails-pg/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/eendroroy%2Fansible-rails-pg/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/eendroroy","download_url":"https://codeload.github.com/eendroroy/ansible-rails-pg/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":249016627,"owners_count":21198833,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ansible-playbook","centos7","postgresql","provisioning","rails","rhel7"],"created_at":"2024-11-28T09:39:37.203Z","updated_at":"2025-10-24T00:54:39.349Z","avatar_url":"https://github.com/eendroroy.png","language":"Ruby","funding_links":[],"categories":[],"sub_categories":[],"readme":"# ansible-rails-pg\n\n[![Contributors](https://img.shields.io/github/contributors/eendroroy/ansible-rails-pg.svg)](https://github.com/eendroroy/ansible-rails-pg/graphs/contributors)\n[![GitHub last commit (branch)](https://img.shields.io/github/last-commit/eendroroy/ansible-rails-pg/master.svg)](https://github.com/eendroroy/ansible-rails-pg)\n[![license](https://img.shields.io/github/license/eendroroy/ansible-rails-pg.svg)](https://github.com/eendroroy/ansible-rails-pg/blob/master/LICENSE)\n[![GitHub issues](https://img.shields.io/github/issues/eendroroy/ansible-rails-pg.svg)](https://github.com/eendroroy/ansible-rails-pg/issues)\n[![GitHub closed issues](https://img.shields.io/github/issues-closed/eendroroy/ansible-rails-pg.svg)](https://github.com/eendroroy/ansible-rails-pg/issues?q=is%3Aissue+is%3Aclosed)\n[![GitHub pull requests](https://img.shields.io/github/issues-pr/eendroroy/ansible-rails-pg.svg)](https://github.com/eendroroy/ansible-rails-pg/pulls)\n[![GitHub closed pull requests](https://img.shields.io/github/issues-pr-closed/eendroroy/ansible-rails-pg.svg)](https://github.com/eendroroy/ansible-rails-pg/pulls?q=is%3Apr+is%3Aclosed)\n\nSetup environment for deploying rails application on a `Debian` or `RPM based` os\n(`Debian`, `Ubuntu`, `RHEL`, `CentOS`, `Fedora`).\nBase repo needs to be enabled using `subscription-manager` on `RHEL`.\n\n## Description\n\nWorks on Debian and RedHat os family.\n\nTested on `Ubuntu 14.04`, `Ubuntu 16.04`, `CentOS 7`, and `RedHat 7`\n\n- System wide `rbenv` installation with ruby 2.5.0 and bundler gem\n- PostgreSQL 10 with environment specific (staging or production) database and user with default configuration\n- Nginx with minimal configuration (application specific configurations can be uploaded during rails application deployment).\n  See [puma-deploy](https://github.com/eendroroy/puma-deploy)\n- Some common dependencies required for rails applications\n- Create deploy user with ssh access and specific sudo permission required to deploy rails application\n\nA sample Vagrantfile is included to test the playbook (Ubuntu 14.04, Ubuntu 16.04 and CentOS 7)\n\n## Variables\n\n```yaml\n# group_vars/all.yml\nruby_version: 2.6.0\ndeploy_user:  deployer\napp_name:     application\ndeploy_path:  '/apps'\napp_env:      staging\n\ndatabases:\n  - { db_name: '{{ app_name }}_production', db_user: 'production_user', db_password: 'production_pass' }\n  - { db_name: '{{ app_name }}_staging',    db_user: 'staging_user',    db_password: 'staging_pass' }\n\npostgres_data_dir:       /data/postgres\npostgres_listen_address: '*'\npostgres_port:           5432\n\n## Tune: mem_24_cpu_16_con_600_store_ssd\npostgres_max_connections:                 600\npostgres_shared_buffers:                  6GB\npostgres_effective_cache_size:            18GB\npostgres_maintenance_work_mem:            1536MB\npostgres_checkpoint_completion_target:    0.7\npostgres_wal_buffers:                     16MB\npostgres_default_statistics_target:       100\npostgres_random_page_cost:                1.1\npostgres_effective_io_concurrency:        200\npostgres_work_mem:                        1310kB\npostgres_min_wal_size:                    1GB\npostgres_max_wal_size:                    2GB\npostgres_max_worker_processes:            16\npostgres_max_parallel_workers_per_gather: 8\npostgres_max_parallel_workers:            16\n```\n\nSee here: [group_vars/all.yml](group_vars/all.yml)\n\n## Contributing\n\nBug reports and pull requests are welcome on GitHub at [ansible-rails-pg repository](https://github.com/eendroroy/ansible-rails-pg). \nThis project is intended to be a safe, welcoming space for collaboration,\nand contributors are expected to adhere to the [Contributor Covenant](http://contributor-covenant.org) code of conduct.\n\n  1. Fork it [eendroroy/ansible-rails-pg](https://github.com/eendroroy/ansible-rails-pg/fork)\n  1. Create your feature branch (`git checkout -b my-new-feature`)\n  1. Commit your changes (`git commit -am 'Add some feature'`)\n  1. Push to the branch (`git push origin my-new-feature`)\n  1. Create a new Pull Request\n\n## Authors\n\n* **indrajit** - *Owner* - [eendroroy](https://github.com/eendroroy)\n\n## License\n\nThis project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Feendroroy%2Fansible-rails-pg","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Feendroroy%2Fansible-rails-pg","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Feendroroy%2Fansible-rails-pg/lists"}