diff --git a/group_vars/reverseproxy.yml b/group_vars/reverseproxy.yml index 5c8fd0d7cb057d3252abdffb8f3be91e361f2084..6a5d29592870be83d74a9633f9d59aae5f333077 100644 --- a/group_vars/reverseproxy.yml +++ b/group_vars/reverseproxy.yml @@ -38,6 +38,7 @@ nginx: - {from: roundcube.crans.org, to: 172.16.10.107} - {from: hedgedoc.crans.org, to: "172.16.10.128:3000"} - {from: owncloud.crans.org, to: 172.16.10.136} + - {from: linx.crans.org, to: "172.16.10.119:8080"} # - {from: belenios.crans.org, to: 172.16.10.111} # - {from: mailman.crans.org, to: 10.231.136.180} diff --git a/hosts b/hosts index 53dac242f18661f50376bba89dba071d08b3fbd5..cb195e01b4edadde34ab64327e35aa9f6b271caa 100644 --- a/hosts +++ b/hosts @@ -151,6 +151,7 @@ jitsi.adm.crans.org kenobi.adm.crans.org kiwi.adm.crans.org kiwijuice.adm.crans.org +linx.adm.crans.org monitoring.adm.crans.org owl.adm.crans.org owncloud.adm.crans.org diff --git a/plays/linx.yml b/plays/linx.yml new file mode 100755 index 0000000000000000000000000000000000000000..80c298640addc04e8497f848001db9f717ae7b13 --- /dev/null +++ b/plays/linx.yml @@ -0,0 +1,9 @@ +#!/usr/bin/env ansible-playbook +--- +- hosts: linx.adm.crans.org + vars: + linx: + ip: "{{ query('ldap', 'ip', 'linx', 'adm') }}" + siteurl: "https://linx.crans.org/" + roles: + - linx diff --git a/roles/linx/handlers/main.yml b/roles/linx/handlers/main.yml new file mode 100644 index 0000000000000000000000000000000000000000..e75657211a22e5985baebd5dae931e840d87974b --- /dev/null +++ b/roles/linx/handlers/main.yml @@ -0,0 +1,5 @@ +--- +- name: Restart linx-server + service: + name: linx-server + state: restarted diff --git a/roles/linx/tasks/main.yml b/roles/linx/tasks/main.yml new file mode 100644 index 0000000000000000000000000000000000000000..60214c5308ffa84aae9ed35ef948e18b4089bd83 --- /dev/null +++ b/roles/linx/tasks/main.yml @@ -0,0 +1,37 @@ +--- +#- name: Install linx + +- name: Create linx user + user: + create_home: yes + home: /var/lib/linx + system: yes + state: present + password: "!" + update_password: always + name: linx + +- name: Create linx config dir + file: + path: /etc/linx + state: directory + +- name: Deploy configuration file + template: + src: "linx/server.conf.j2" + dest: "/etc/linx/server.conf" + mode: 0644 + +- name: Install linx systemd unit + template: + src: "systemd/system/linx-server.service.j2" + dest: "/etc/systemd/system/linx-server.service" + mode: 0644 + notify: Restart linx-server + +- name: Load and activate linx systemd unit + systemd: + name: linx-server.service + daemon_reload: true + enabled: true + state: started diff --git a/roles/linx/templates/linx/server.conf.j2 b/roles/linx/templates/linx/server.conf.j2 new file mode 100644 index 0000000000000000000000000000000000000000..25af772cf4f6dff9d88be77611dd8503fcef0dcb --- /dev/null +++ b/roles/linx/templates/linx/server.conf.j2 @@ -0,0 +1,9 @@ +{{ ansible_header | comment }} + +bind = {{ linx.ip }}:8080 +sitename = CRANS Linx +siteurl = {{ linx.siteurl }} +maxsize = 10000000 +maxexpiry = 604800 +filespath = /var/lib/linx/files/ +metapath = /var/lib/linx/meta/ diff --git a/roles/linx/templates/systemd/system/linx-server.service.j2 b/roles/linx/templates/systemd/system/linx-server.service.j2 new file mode 100644 index 0000000000000000000000000000000000000000..4ce99e254cc0fb10e93d3932ad54a92ed145228e --- /dev/null +++ b/roles/linx/templates/systemd/system/linx-server.service.j2 @@ -0,0 +1,16 @@ +{{ ansible_header | comment }} + +[Unit] +Description=Linx +After=network.target + +[Service] +Type=simple +User=linx +Group=linx +WorkingDirectory=/var/lib/linx/ +ExecStart=/usr/local/sbin/linx-server -config /etc/linx/server.conf +Restart=always + +[Install] +WantedBy=multi-user.target