-
Notifications
You must be signed in to change notification settings - Fork 0
/
playbook.yml
77 lines (60 loc) · 2.01 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
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
---
- hosts: all
sudo: yes
vars:
sinopia_user: sinopia
www_folder: /var/www
sinopia_folder: "{{www_folder}}/sinopia"
tasks:
- debug: msg="This will upgrade your NODE to a stable version!"
- name: Install required packages for sinopia
apt: pkg={{ item }} update_cache=yes state=present force=yes
with_items:
- nodejs
- npm
- wget
- zip
- vim
- name: Create sinopia user
user: name={{sinopia_user}}
- name: Creating www_folder dir
file: path={{www_folder}} state=directory
- name: Creating sinopia_folder dir
file: path={{sinopia_folder}}
state=directory
owner={{sinopia_user}}
group={{sinopia_user}}
- name: Clean NPM cache
command: npm cache clean -f
- name: Double check node
npm: name=n global=yes state=latest
- name: Checking latest stable
command: n stable
- name: install sinopia
npm: name=sinopia global=yes state=present
- name: Copy config file
copy: src=config.yaml dest={{sinopia_folder}}
- name: Copy sinopia start stop script
template: src=sinopia.sh.j2
dest={{sinopia_folder}}/sinopia.sh
mode=0744
- name: Change sinopia folder permissions
file: path={{sinopia_folder}}
state=directory
recurse=yes
owner={{sinopia_user}}
group={{sinopia_user}}
- name: start sinopia for the first time to create db
command: bash -lc "sinopia > {{sinopia_folder}}/sinopia_firt_run_log &"
chdir={{sinopia_folder}}
sudo_user: "{{sinopia_user}}"
- name: Add sinopia to cron.d to start every reboot
cron: name="start sinopia on reboot"
special_time=reboot
job="{{sinopia_folder}}/sinopia.sh start"
user=root
cron_file=sinopia
state=present
- name: Start sinopia
command: bash -lc "./sinopia.sh start"
chdir={{sinopia_folder}}