Last active
December 31, 2015 20:39
-
-
Save mokevnin/8041479 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| --- | |
| - | |
| hosts: default | |
| vars: | |
| database: battle_development | |
| server_name: "codebattle.me" | |
| erlang: | |
| version: r16b03 | |
| postgresql: | |
| version: 9.1 | |
| password: my_secret_password | |
| tasks: | |
| - | |
| name: apt-get update | |
| apt: update_cache=true cache_valid_time=3600 | |
| sudo: true | |
| - | |
| name: install packages | |
| apt: pkg={{ item }} state=installed | |
| sudo: true | |
| with_items: | |
| - curl | |
| - vim | |
| - git | |
| - runit | |
| - python-pycurl | |
| - postgresql-{{postgresql.version}} | |
| - libpq-dev | |
| - python-psycopg2 | |
| - | |
| name: add repositories | |
| sudo: true | |
| apt_repository: repo='ppa:nginx/stable' update_cache=yes | |
| - | |
| name: install nginx | |
| apt: pkg=nginx state=installed | |
| sudo: true | |
| - | |
| name: setup kerl | |
| sudo: true | |
| shell: | |
| curl -O https://raw.github.com/spawngrid/kerl/master/kerl | |
| && chmod +x kerl | |
| && cp kerl /usr/local/bin | |
| creates=/usr/local/bin/kerl | |
| - | |
| name: setup erlang | |
| shell: | |
| kerl build {{erlang.version | upper }} {{ erlang.version }} | |
| && kerl install {{ erlang.version }} ~/.kerl/erlangs/{{ erlang.version }} | |
| creates=~/.kerl/erlangs/{{ erlang.version }} | |
| - | |
| name: update bashrc (erlang activation) | |
| lineinfile: | |
| dest=~/.bash_profile | |
| regexp="erlangs/(.+)/activate" | |
| line=". ~/.kerl/erlangs/{{ erlang.version }}/activate" | |
| state=present | |
| backup=yes | |
| insertafter=EOF | |
| create=yes | |
| - | |
| name: activate erlang | |
| shell: . ~/.kerl/erlangs/r16b02/activate | |
| - | |
| name: install RVM and Ruby | |
| shell: curl -sSL https://get.rvm.io | bash -s stable --ruby --autolibs=enabled | |
| creates=~/.rvm/bin/ruby | |
| - | |
| name: update postgres client configuration | |
| sudo: true | |
| copy: src=files/pg_hba.conf dest=/etc/postgresql/{{postgresql.version}}/main/pg_hba.conf | |
| notify: | |
| - restart postgresql | |
| - | |
| meta: flush_handlers | |
| - | |
| name: update nginx vhost conf | |
| sudo: true | |
| template: src=templates/nginx.j2 dest=/etc/nginx/conf.d/battle.conf | |
| notify: | |
| - reload nginx | |
| - | |
| name: create postgres user (battle) | |
| postgresql_user: | |
| name=battle | |
| password={{ postgresql.password }} | |
| - | |
| name: create battle dev db | |
| postgresql_db: | |
| name={{ database }} | |
| handlers: | |
| - | |
| name: restart postgresql | |
| sudo: true | |
| service: name=postgresql state=restarted | |
| - | |
| name: reload nginx | |
| sudo: true | |
| service: name=nginx state=reloaded |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment