summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--roles/packages/files/packages.ilvokhin.com33
-rw-r--r--roles/packages/meta/main.yml8
-rw-r--r--roles/packages/tasks/main.yml38
-rw-r--r--web.yml1
4 files changed, 80 insertions, 0 deletions
diff --git a/roles/packages/files/packages.ilvokhin.com b/roles/packages/files/packages.ilvokhin.com
new file mode 100644
index 0000000..cbe8dfb
--- /dev/null
+++ b/roles/packages/files/packages.ilvokhin.com
@@ -0,0 +1,33 @@
+server {
+ server_name packages.ilvokhin.com www.packages.ilvokhin.com;
+
+ root /srv/http/packages.ilvokhin.com;
+ autoindex on;
+
+ location / {
+ try_files $uri $uri/ = 404;
+ }
+
+ listen [::]:443 ssl;
+ listen 443 ssl;
+
+ ssl_certificate /etc/letsencrypt/live/packages.ilvokhin.com/fullchain.pem;
+ ssl_certificate_key /etc/letsencrypt/live/packages.ilvokhin.com/privkey.pem;
+}
+
+server {
+ if ($host = www.packages.ilvokhin.com) {
+ return 301 https://$host$request_uri;
+ }
+
+ if ($host = packages.ilvokhin.com) {
+ return 301 https://$host$request_uri;
+ }
+
+ server_name packages.ilvokhin.com www.packages.ilvokhin.com;
+
+ listen 80;
+ listen [::]:80;
+
+ return 404;
+}
diff --git a/roles/packages/meta/main.yml b/roles/packages/meta/main.yml
new file mode 100644
index 0000000..4d336ba
--- /dev/null
+++ b/roles/packages/meta/main.yml
@@ -0,0 +1,8 @@
+dependencies:
+ - role: certificate
+ vars:
+ domains:
+ - packages.ilvokhin.com
+ - www.packages.ilvokhin.com
+ - role: nginx
+ - role: rsync
diff --git a/roles/packages/tasks/main.yml b/roles/packages/tasks/main.yml
new file mode 100644
index 0000000..12d87db
--- /dev/null
+++ b/roles/packages/tasks/main.yml
@@ -0,0 +1,38 @@
+- name: Create /srv/http/packages.ilvokhin.com directory
+ ansible.builtin.file:
+ path: /srv/http/packages.ilvokhin.com
+ state: directory
+ owner: http
+ group: http
+ mode: u+rw,g+rw,o+r
+
+- name: Create arch sub-directories
+ ansible.builtin.file:
+ path: /srv/http/packages.ilvokhin.com/{{ item }}
+ state: directory
+ owner: http
+ group: http
+ mode: u+rw,g+rw,o+r
+ loop:
+ - x86_64
+
+- name: Configure nginx for packages.ilvokhin.com
+ ansible.builtin.copy:
+ src: files/packages.ilvokhin.com
+ dest: /etc/nginx/sites-available
+ owner: root
+ group: root
+ mode: u+rw,g+r,o+r
+ notify:
+ - Reload nginx
+
+- name: Enable packages.ilvokhin.com site
+ ansible.builtin.file:
+ src: /etc/nginx/sites-available/packages.ilvokhin.com
+ dest: /etc/nginx/sites-enabled/packages.ilvokhin.com
+ owner: root
+ group: root
+ mode: u+rw,g+r,o+r
+ state: link
+ notify:
+ - Reload nginx
diff --git a/web.yml b/web.yml
index 2488e31..ab2d631 100644
--- a/web.yml
+++ b/web.yml
@@ -5,6 +5,7 @@
- { role: home }
- { role: ip }
- { role: blog }
+ - { role: packages }
# Git
- { role: gitserver }
- { role: cgit }