From 89120bdaef0cf4f48886206a0d1df6511cd06909 Mon Sep 17 00:00:00 2001 From: Pierre-Olivier Mercier Date: Sun, 4 Dec 2016 18:52:53 +0100 Subject: [PATCH] Add role for backend --- playbooks/playbook.yml | 1 + playbooks/roles/fic-backend/files/backend | 1 + .../roles/fic-backend/files/backend.service | 12 ++++ playbooks/roles/fic-backend/files/static | 1 + playbooks/roles/fic-backend/tasks/main.yml | 57 +++++++++++++++++++ 5 files changed, 72 insertions(+) create mode 120000 playbooks/roles/fic-backend/files/backend create mode 100644 playbooks/roles/fic-backend/files/backend.service create mode 120000 playbooks/roles/fic-backend/files/static create mode 100644 playbooks/roles/fic-backend/tasks/main.yml diff --git a/playbooks/playbook.yml b/playbooks/playbook.yml index e7d4018f..ba222cd3 100644 --- a/playbooks/playbook.yml +++ b/playbooks/playbook.yml @@ -4,4 +4,5 @@ hosts: all roles: - nrpe + - fic-backend - fic-frontend diff --git a/playbooks/roles/fic-backend/files/backend b/playbooks/roles/fic-backend/files/backend new file mode 120000 index 00000000..096494f2 --- /dev/null +++ b/playbooks/roles/fic-backend/files/backend @@ -0,0 +1 @@ +../../../../backend/backend \ No newline at end of file diff --git a/playbooks/roles/fic-backend/files/backend.service b/playbooks/roles/fic-backend/files/backend.service new file mode 100644 index 00000000..3b696bd4 --- /dev/null +++ b/playbooks/roles/fic-backend/files/backend.service @@ -0,0 +1,12 @@ +[Unit] +Description=FIC Backend service +After=mysql.service + +[Service] +User=fic +Group=nogroup +WorkingDirectory=/home/fic +ExecStart=/home/fic/backend -unlockedChallenges -teams ./TEAMS -submission ./submissions + +[Install] +WantedBy=multi-user.target diff --git a/playbooks/roles/fic-backend/files/static b/playbooks/roles/fic-backend/files/static new file mode 120000 index 00000000..bf249be8 --- /dev/null +++ b/playbooks/roles/fic-backend/files/static @@ -0,0 +1 @@ +../../../../admin/static/ \ No newline at end of file diff --git a/playbooks/roles/fic-backend/tasks/main.yml b/playbooks/roles/fic-backend/tasks/main.yml new file mode 100644 index 00000000..edb67725 --- /dev/null +++ b/playbooks/roles/fic-backend/tasks/main.yml @@ -0,0 +1,57 @@ +--- +- name: install mysql + apt: name=mariadb-server + +- name: create fic user + user: + name=fic + home=/home/fic + group=nogroup + +- name: copy backend binary + copy: + src=backend + mode=755 + dest=/home/fic/backend + +- name: copy admin htdocs + copy: + src=static/ + dest=/home/fic/admin-htdocs + +- name: copy admin binary + copy: + src=admin + mode=755 + dest=/home/fic/admin + + +- name: enable and start mysql daemon + service: name=mysql enabled=yes state=started + +- name: create fic database + mysql_db: + name=fic + state=present + +- name: create fic user + mysql_user: + name=fic + password=fic + priv=fic.*:ALL + state=present + + +- name: add backend service + copy: + src=backend.service + dest=/lib/systemd/system/fic-backend.service + +- name: reload systemd + command: systemctl daemon-reload + +- name: enable and start fic-backend + service: + name=fic-backend + enabled=yes + state=started