-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathplaybook.yml
60 lines (59 loc) · 2.18 KB
/
playbook.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
---
- hosts: rpi-ble-scan
sudo: false
vars:
deb_dir: "/home/pi/debs"
# node_js_url: "http://node-arm.herokuapp.com/node_0.10.36_armhf.deb"
node_js_url: "http://node-arm.herokuapp.com/node_latest_armhf.deb"
# node_js_deb_file: "node_0.10.36-1_armhf.deb"
node_js_deb_file: "node_latest_armhf.deb"
ble_scanner_repo: "https://github.com/c0ze/node-ble-beacon-scanner"
ble_scanner_dir: "/home/pi/ble-scanner"
log_dir: "/var/log/ble-scanner"
log_file: "{{ log_dir}}/ble_scan.log"
out_file: "{{ log_dir}}/ble_scan.out"
error_file: "{{ log_dir}}/ble_scan.err"
tasks:
- name: Make download dir
sudo: false
file: path={{ deb_dir }} state=directory
- name: Make log dir
sudo: true
file: path={{ log_dir }} state=directory
- name: Download Node Js
sudo: false
get_url: url={{ node_js_url }} dest={{ deb_dir }}
- name: Install Node js
sudo: true
action: shell cd {{ deb_dir }} && dpkg -i {{ node_js_deb_file }}
- name: Install Ble Beacon Scanner
sudo: false
git: repo={{ ble_scanner_repo }}
dest={{ ble_scanner_dir }}
- name: Install apt dependencies
sudo: true
apt: name={{ item }} state=present
with_items:
- bluetooth
- bluez-utils
- libbluetooth-dev
- name: Install npm dependencies
sudo: false
npm: path={{ ble_scanner_dir }} state=present
- name: "Install forever (to run Node.js app)."
npm: name=forever global=yes state=latest
sudo: true
- name: "Stop forever apps"
command: forever stopall
sudo: true
- name: "Start ble beacon scan Node.js app."
sudo: true
action: shell cd {{ ble_scanner_dir }} && forever start -a -l {{ log_file }} -o {{ out_file }} -e {{ error_file }} app.js
# - name: "Check list of Node.js apps running."
# command: forever list
# register: forever_list
# changed_when: false
# - name: "Start ble beacon scan Node.js app."
# sudo: true
# action: shell cd {{ ble_scanner_dir }} && forever start -a -l {{ log_file }} -o {{ out_file }} -e {{ error_file }} app.js
# when: "forever_list.stdout.find('{{ ble_scanner_dir }}/app.js') == -1"