commit 7e81d6fe002ab8de764f8a074fe398c593a7d655 Author: Anton Vakhrushev Date: Sun Jul 30 15:23:01 2017 +0300 Add configuration for primary vds diff --git a/.editorconfig b/.editorconfig new file mode 100644 index 0000000..6a8fde0 --- /dev/null +++ b/.editorconfig @@ -0,0 +1,13 @@ +root = true + +[*] +end_of_line = lf +insert_final_newline = true +indent_style = space +indent_size = 4 + +[*.{yml}] +indent_size = 2 + +[Makefile] +indent_style = tab diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..711bc92 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +/ansible/galaxy.roles/ diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..f39a8a1 --- /dev/null +++ b/Makefile @@ -0,0 +1,2 @@ +configure: + ansible-playbook --inventory "ansible/hosts_prod" --user=av --ask-become-pass ansible/configuration.yml diff --git a/ansible.cfg b/ansible.cfg new file mode 100644 index 0000000..935d32b --- /dev/null +++ b/ansible.cfg @@ -0,0 +1,2 @@ +[defaults] +roles_path = ./ansible/galaxy.roles diff --git a/ansible/configuration.yml b/ansible/configuration.yml new file mode 100644 index 0000000..29be365 --- /dev/null +++ b/ansible/configuration.yml @@ -0,0 +1,14 @@ +--- +- hosts: all + become: true + + vars: + timezone: UTC + nginx_remove_default_vhost: true + + roles: + - yatesr.timezone + - geerlingguy.nginx + - server + - site-anwinged + - site-s2photo diff --git a/ansible/hosts_prod b/ansible/hosts_prod new file mode 100644 index 0000000..5e930f1 --- /dev/null +++ b/ansible/hosts_prod @@ -0,0 +1 @@ +188.225.32.183 diff --git a/ansible/requirements.yml b/ansible/requirements.yml new file mode 100644 index 0000000..ba5db27 --- /dev/null +++ b/ansible/requirements.yml @@ -0,0 +1,6 @@ +--- +- src: yatesr.timezone + version: 1.0.0 + +- src: geerlingguy.nginx + version: 1.9.6 diff --git a/ansible/roles/server/tasks/main.yml b/ansible/roles/server/tasks/main.yml new file mode 100755 index 0000000..f4c21c2 --- /dev/null +++ b/ansible/roles/server/tasks/main.yml @@ -0,0 +1,16 @@ +--- +- name: Update apt cache + apt: update_cache=yes + +- name: Install system packages + apt: pkg={{ item }} state=latest + with_items: + - curl + - wget + - python-software-properties + - git + +- name: Add deploy user + user: + name: deployer + groups: www-data diff --git a/ansible/roles/site-anwinged/tasks/main.yml b/ansible/roles/site-anwinged/tasks/main.yml new file mode 100755 index 0000000..7f7c9ac --- /dev/null +++ b/ansible/roles/site-anwinged/tasks/main.yml @@ -0,0 +1,15 @@ +--- +- name: Create nginx config + template: + src: site.conf.j2 + dest: /etc/nginx/sites-enabled/anwinged.conf + notify: restart nginx + +- name: Create root folder + file: + path: /var/www/anwinged + state: directory + owner: deployer + group: www-data + recurse: yes + notify: restart nginx diff --git a/ansible/roles/site-anwinged/templates/site.conf.j2 b/ansible/roles/site-anwinged/templates/site.conf.j2 new file mode 100755 index 0000000..6cbfce8 --- /dev/null +++ b/ansible/roles/site-anwinged/templates/site.conf.j2 @@ -0,0 +1,15 @@ +server { + server_name www.anwinged.ru; + return 301 $scheme://anwinged.ru$request_uri; +} + +server { + listen 80; + server_name anwinged.ru; + + location / { + root /var/www/anwinged/current; + index index.html; + try_files $uri $uri/ =404; + } +} diff --git a/ansible/roles/site-s2photo/tasks/main.yml b/ansible/roles/site-s2photo/tasks/main.yml new file mode 100755 index 0000000..5fa3ab0 --- /dev/null +++ b/ansible/roles/site-s2photo/tasks/main.yml @@ -0,0 +1,14 @@ +--- +- name: Create nginx config + template: + src: site.conf.j2 + dest: /etc/nginx/sites-enabled/s2photo.conf + notify: restart nginx + +- name: Create root folder + file: + path: /var/www/s2photo + state: directory + owner: deployer + group: deployer + mode: u=rw,g=r,o=r diff --git a/ansible/roles/site-s2photo/templates/site.conf.j2 b/ansible/roles/site-s2photo/templates/site.conf.j2 new file mode 100755 index 0000000..286dc00 --- /dev/null +++ b/ansible/roles/site-s2photo/templates/site.conf.j2 @@ -0,0 +1,10 @@ +server { + listen 80; + server_name s2photo.ru www.s2photo.ru; + + location / { + root /var/www/s2photo/current; + index index.html; + try_files $uri $uri/ =404; + } +}