From 861be74b6661a5627798790ace6f1ecfd88fbd3d Mon Sep 17 00:00:00 2001
From: Anton Vakhrushev <anwinged@ya.ru>
Date: Sun, 30 Jul 2017 16:53:21 +0300
Subject: [PATCH] Add static site single role

---
 ansible/configuration.yml                         |  8 ++++++--
 .../roles/site-anwinged/templates/site.conf.j2    | 15 ---------------
 ansible/roles/site-s2photo/tasks/main.yml         | 14 --------------
 ansible/roles/site-s2photo/templates/site.conf.j2 | 10 ----------
 .../{site-anwinged => static-site}/tasks/main.yml |  4 ++--
 ansible/roles/static-site/templates/site.conf.j2  | 15 +++++++++++++++
 6 files changed, 23 insertions(+), 43 deletions(-)
 delete mode 100755 ansible/roles/site-anwinged/templates/site.conf.j2
 delete mode 100755 ansible/roles/site-s2photo/tasks/main.yml
 delete mode 100755 ansible/roles/site-s2photo/templates/site.conf.j2
 rename ansible/roles/{site-anwinged => static-site}/tasks/main.yml (68%)
 mode change 100755 => 100644
 create mode 100755 ansible/roles/static-site/templates/site.conf.j2

diff --git a/ansible/configuration.yml b/ansible/configuration.yml
index 29be365..7008e82 100644
--- a/ansible/configuration.yml
+++ b/ansible/configuration.yml
@@ -10,5 +10,9 @@
     - yatesr.timezone
     - geerlingguy.nginx
     - server
-    - site-anwinged
-    - site-s2photo
+    - role: static-site
+      static_site_name: anwinged
+      static_site_domain: anwinged.ru
+    - role: static-site
+      static_site_name: s2photo
+      static_site_domain: s2photo.ru
diff --git a/ansible/roles/site-anwinged/templates/site.conf.j2 b/ansible/roles/site-anwinged/templates/site.conf.j2
deleted file mode 100755
index 6cbfce8..0000000
--- a/ansible/roles/site-anwinged/templates/site.conf.j2
+++ /dev/null
@@ -1,15 +0,0 @@
-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
deleted file mode 100755
index 5fa3ab0..0000000
--- a/ansible/roles/site-s2photo/tasks/main.yml
+++ /dev/null
@@ -1,14 +0,0 @@
----
-- 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
deleted file mode 100755
index 286dc00..0000000
--- a/ansible/roles/site-s2photo/templates/site.conf.j2
+++ /dev/null
@@ -1,10 +0,0 @@
-server {
-    listen 80;
-    server_name s2photo.ru www.s2photo.ru;
-
-    location / {
-        root /var/www/s2photo/current;
-        index index.html;
-        try_files $uri $uri/ =404;
-    }
-}
diff --git a/ansible/roles/site-anwinged/tasks/main.yml b/ansible/roles/static-site/tasks/main.yml
old mode 100755
new mode 100644
similarity index 68%
rename from ansible/roles/site-anwinged/tasks/main.yml
rename to ansible/roles/static-site/tasks/main.yml
index 7f7c9ac..7e6cf28
--- a/ansible/roles/site-anwinged/tasks/main.yml
+++ b/ansible/roles/static-site/tasks/main.yml
@@ -2,12 +2,12 @@
 - name: Create nginx config
   template:
     src: site.conf.j2
-    dest: /etc/nginx/sites-enabled/anwinged.conf
+    dest: /etc/nginx/sites-enabled/{{ static_site_name }}.conf
   notify: restart nginx
 
 - name: Create root folder
   file:
-    path: /var/www/anwinged
+    path: /var/www/{{ static_site_name }}
     state: directory
     owner: deployer
     group: www-data
diff --git a/ansible/roles/static-site/templates/site.conf.j2 b/ansible/roles/static-site/templates/site.conf.j2
new file mode 100755
index 0000000..e586e50
--- /dev/null
+++ b/ansible/roles/static-site/templates/site.conf.j2
@@ -0,0 +1,15 @@
+server {
+    server_name www.{{ static_site_domain }};
+    return 301 $scheme://{{ static_site_domain }}$request_uri;
+}
+
+server {
+    listen 80;
+    server_name {{ static_site_domain }};
+
+    location / {
+        root /var/www/{{ static_site_name }}/current;
+        index index.html;
+        try_files $uri $uri/ =404;
+    }
+}