diff --git a/.gitmodules b/.gitmodules new file mode 100644 index 0000000000000000000000000000000000000000..1a29ce8dbc699966582096817f4952d212cbd2cd --- /dev/null +++ b/.gitmodules @@ -0,0 +1,3 @@ +[submodule "vendor/nginx-http-accept-lang"] + path = vendor/nginx-http-accept-lang + url = git@github.com:fghibellini/nginx-http-accept-lang diff --git a/roles/common/tasks/file_system.yml b/roles/common/tasks/file_system.yml index 24c7574fca5aeeaa882ef6bdfa77d72c91b25efb..efe66ba9d47b18e3accbd4b93cb8c14cd63c250d 100644 --- a/roles/common/tasks/file_system.yml +++ b/roles/common/tasks/file_system.yml @@ -4,3 +4,6 @@ - name: Create Git bare repositories directory file: path=/home/ubuntu/repos state=directory group=coopdevs owner=ubuntu mode=2775 + +- name: Create shared directory + file: path=/home/ubuntu/shared state=directory group=coopdevs owner=ubuntu mode=2775 diff --git a/roles/coopdevs.org/files/coopdevs.conf b/roles/coopdevs.org/files/coopdevs.conf index d60aff7d07a1ed2b841c675e3674d9b001de93c3..61ab0907d672aa27b6d3cc4a94ebab42d50f8c3a 100644 --- a/roles/coopdevs.org/files/coopdevs.conf +++ b/roles/coopdevs.org/files/coopdevs.conf @@ -4,8 +4,18 @@ server { server_name coopdevs.org www.coopdevs.org; - root /opt/sites/coopdevs; - index index.html; + # Initial i18n redirect + location = / { + default_type text/html; - expires 1d; + set $ngx_html_path $document_root; + content_by_lua_file /home/ubuntu/shared/nginx/lang.lua; + } + + location / { + root /opt/sites/coopdevs; + index index.html; + + expires 1d; + } } diff --git a/roles/http-server/tasks/install_packages.yml b/roles/http-server/tasks/install_packages.yml index 34db97c65b1c8684becf8e569b8b3f7be6c7e0ab..72ea82176203295f7fe901fb7915dec008b18a53 100644 --- a/roles/http-server/tasks/install_packages.yml +++ b/roles/http-server/tasks/install_packages.yml @@ -7,7 +7,7 @@ - name: Install nginx package apt: - name: 'nginx' + name: 'nginx-extras' state: present - name: Add `www-data` user to `coopdevs` group diff --git a/roles/http-server/tasks/main.yml b/roles/http-server/tasks/main.yml index 62faad1b268b5758390db6977b553452f3c75b34..d3e1a4627cba3297a7519b0f744b9db34bded84a 100644 --- a/roles/http-server/tasks/main.yml +++ b/roles/http-server/tasks/main.yml @@ -6,6 +6,18 @@ src: roles/http-server/files/nginx.conf dest: /etc/nginx/nginx.conf +- name: Create shared nginx directory + file: + path: /home/ubuntu/shared/nginx + state: directory + +- name: Copy the lua lang module + notify: Reload NGINX + copy: + src: vendor/nginx-http-accept-lang/lang.lua + dest: /home/ubuntu/shared/nginx/lang.lua + mode: 'u+x' + - name: Remove default nginx site file: path: /etc/nginx/sites-enabled/default diff --git a/vendor/nginx-http-accept-lang b/vendor/nginx-http-accept-lang new file mode 160000 index 0000000000000000000000000000000000000000..52040947dee481fbfdb52550cd15e56489462474 --- /dev/null +++ b/vendor/nginx-http-accept-lang @@ -0,0 +1 @@ +Subproject commit 52040947dee481fbfdb52550cd15e56489462474