102 lines
2.7 KiB
YAML
102 lines
2.7 KiB
YAML
---
|
|
|
|
- hosts: dl
|
|
vars:
|
|
uploaders:
|
|
- mdk
|
|
- hs-157
|
|
- pilou
|
|
- entwanne
|
|
|
|
tasks:
|
|
- name: Basic setup
|
|
include_role: name=common
|
|
|
|
- name: Create uploaders group
|
|
group:
|
|
name: uploaders
|
|
state: present
|
|
|
|
- name: Create uploaders accounts
|
|
user:
|
|
group: uploaders
|
|
name: "{{ item }}"
|
|
state: present
|
|
loop: "{{ uploaders }}"
|
|
|
|
- name: mkdir uploaders .ssh
|
|
file:
|
|
path: "~/.ssh"
|
|
state: directory
|
|
mode: 0755
|
|
become: yes
|
|
become_user: "{{ item }}"
|
|
loop: "{{ uploaders }}"
|
|
|
|
- name: Set user authorized keys
|
|
copy:
|
|
content: "{{ authorized_keys[item]|join('\n') }}"
|
|
dest: "~/.ssh/authorized_keys"
|
|
mode: 0644
|
|
become: yes
|
|
become_user: "{{ item }}"
|
|
loop: "{{ uploaders }}"
|
|
|
|
- name: Install dependencies
|
|
apt:
|
|
name: [libnginx-mod-http-fancyindex, rsync]
|
|
state: present
|
|
|
|
- name: Setup afpy.org
|
|
include_role: name=nginx
|
|
vars:
|
|
nginx_owner: dl-afpy-org
|
|
nginx_domain: dl.afpy.org
|
|
nginx_certificates: [dl.afpy.org, videos-2015.pycon.fr]
|
|
nginx_conf: |
|
|
server
|
|
{
|
|
listen [::]:80; listen 80;
|
|
server_name dl.afpy.org;
|
|
access_log /var/log/nginx/http-access.log;
|
|
error_log /var/log/nginx/http-error.log;
|
|
return 301 https://$host$request_uri;
|
|
}
|
|
|
|
server
|
|
{
|
|
listen [::]:80; listen 80;
|
|
server_name videos-2015.pycon.fr;
|
|
access_log /var/log/nginx/http-access.log;
|
|
error_log /var/log/nginx/http-error.log;
|
|
return 301 https://dl.afpy.org/pycon-fr-15$request_uri;
|
|
}
|
|
|
|
server
|
|
{
|
|
listen [::]:443 ssl; listen 443 ssl;
|
|
server_name videos-2015.pycon.fr;
|
|
access_log /var/log/nginx/videos-2015.pycon.fr-access.log;
|
|
error_log /var/log/nginx/videos-2015.pycon.fr-error.log;
|
|
include snippets/letsencrypt-dl.afpy.org.conf;
|
|
return 301 https://dl.afpy.org/pycon-fr-15$request_uri;
|
|
}
|
|
|
|
server
|
|
{
|
|
listen [::]:443 ssl; listen 443 ssl;
|
|
server_name dl.afpy.org;
|
|
charset utf-8;
|
|
access_log /var/log/nginx/dl.afpy.org-access.log;
|
|
error_log /var/log/nginx/dl.afpy.org-error.log;
|
|
include snippets/letsencrypt-dl.afpy.org.conf;
|
|
|
|
root /var/www/dl.afpy.org/;
|
|
|
|
location /
|
|
{
|
|
fancyindex on;
|
|
fancyindex_exact_size off; # Output human-readable file sizes.
|
|
}
|
|
}
|