aboutsummaryrefslogtreecommitdiff
path: root/ansible/roles
diff options
context:
space:
mode:
authorMilo Casagrande <milo.casagrande@linaro.org>2014-10-30 11:23:23 +0100
committerMilo Casagrande <milo.casagrande@linaro.org>2014-10-30 11:23:23 +0100
commitb98cc5f15bdea3961b4df7c46722927c6db14eeb (patch)
tree5e0bc5f9e5319f5d09ad4abe4d0b481754954b84 /ansible/roles
parent3a76ac5a8bff4a8dfcbb05be7a2e99047f857ffd (diff)
ansible: Add celery systemd service.
* Add new celery systemd service. * Add systemd-reload handler. Change-Id: I30e1b1b00189057419cfa5e2be49fb51b7146838
Diffstat (limited to 'ansible/roles')
-rw-r--r--ansible/roles/init-conf/handlers/main.yml3
-rw-r--r--ansible/roles/init-conf/tasks/main.yml34
-rw-r--r--ansible/roles/init-conf/templates/kernelci-celery.service22
3 files changed, 58 insertions, 1 deletions
diff --git a/ansible/roles/init-conf/handlers/main.yml b/ansible/roles/init-conf/handlers/main.yml
index 8a85fed..06e409f 100644
--- a/ansible/roles/init-conf/handlers/main.yml
+++ b/ansible/roles/init-conf/handlers/main.yml
@@ -23,3 +23,6 @@
- name: restart-celery
service: name=celery
state=restarted
+
+- name: reload-systemd
+ command: /bin/systemd daemon-reload
diff --git a/ansible/roles/init-conf/tasks/main.yml b/ansible/roles/init-conf/tasks/main.yml
index c33f4a7..5a457e5 100644
--- a/ansible/roles/init-conf/tasks/main.yml
+++ b/ansible/roles/init-conf/tasks/main.yml
@@ -11,13 +11,23 @@
- init
- upstart
-- name: Install systemd service
+- name: Install kernelci systemd service
template: src=kernelci-backend.service
dest=/etc/systemd/system/{{ init_service }}.service
mode=0644
owner=root
group=root
when: ansible_lsb.id == "Debian"
+ notify:
+ - reload-systemd
+ tags:
+ - init
+ - systemd
+
+- name: Enable kernelci systemd service
+ command: /bin/systemctl enable {{ init_service }}.service
+ creates=/etc/systemd/system/multi-user.target.wants/{{ init_service }}.service
+ when: ansible_lsb.id == "Debian"
tags:
- init
- systemd
@@ -32,3 +42,25 @@
tags:
- init
- upstart
+
+- name: Install celery systemd service
+ template: src=kernelci-celery.service
+ dest=/etc/systemd/system/kernelci-celery.service
+ owner=root
+ group=root
+ mode=0644
+ when: ansible_lsb.id == "Debian"
+ tags:
+ - init
+ - systemd
+
+- name: Enable celery systemd service
+ command: /bin/systemctl enable kernelci-celery.service
+ creates=/etc/systemd/system/multi-user.target.wants/kernelci-celery.service
+ when: ansible_lsb.id == "Debian"
+ notify:
+ - reload-systemd
+ tags:
+ - init
+ - systemd
+
diff --git a/ansible/roles/init-conf/templates/kernelci-celery.service b/ansible/roles/init-conf/templates/kernelci-celery.service
new file mode 100644
index 0000000..82487de
--- /dev/null
+++ b/ansible/roles/init-conf/templates/kernelci-celery.service
@@ -0,0 +1,22 @@
+[Unit]
+Description=Kernel CI Backend Celery
+
+[Service]
+Type=simple
+User={{ app_user }}
+Group={{ app_user }}
+ProtectHome=true
+NoNewPrivileges=true
+PrivateTmp=true
+SyslogIdentifier=kernelci-celery
+LimitNOFILE=65536
+RestartSec=5
+Restart=always
+PIDFile=/tmp/kernelci-celery.pid
+WorkingDirectory={{ install_base }}/{{ hostname }}/app
+ExecStart={{ install_base }}/.venv/{{ hostname }}/bin/celery worker \
+ --autoscale=4,1 --loglevel=INFO \
+ --pidfile=/tmp/kernelci-celery.pid --app=taskqueue
+
+[Install]
+WantedBy=multi-user.target