-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathfabfile.py
71 lines (48 loc) · 1.49 KB
/
fabfile.py
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
# -*- coding: utf-8 -*-
from fabric.api import *
import os
import time
def info_servidor():
"""Muestra información del servidor"""
run('cat /proc/cpuinfo')
def install_app():
"""Clona el repositorio e instala las dependencias"""
with shell_env(NODE_ENV='production'):
run('rm -rf tfg_gymapp')
run('git clone https://github.com/antoniovj1/tfg_gymapp.git')
run('cd tfg_gymapp && npm install')
def start_app():
"""Inicia la aplicación (node,mongo y nginx)"""
run('sudo service mongod start')
run('sleep 7 && cd tfg_gymapp && sudo pm2 start server.js')
run('sudo service nginx restart')
def restart_app():
"""Reinicia la aplicación"""
run('sudo service nginx restart')
run('sudo pm2 restart server')
def logs_app():
"""Muestra los logs de la aplicación"""
run('sudo pm2 logs server')
def stop_app():
"""Detiene la aplicación"""
run('sudo pm2 stop server')
# run ('sudo service mongod stop')
# run ('sudo service nginx stop')
def kill_app():
run('sudo pm2 delete server')
# run ('sudo service mongod stop')
# run ('sudo service nginx stop')
def update_app():
"""Actualiza la aplicación"""
kill_app()
install_app()
start_app()
def monitoring_pm2():
"""Monitorización app"""
run('sudo pm2 monit')
def list_pm2():
"""Lista de apps ejecutandose"""
run('sudo pm2 list')
def drop_databas():
"""Borra la base de datos"""
run('mongo iv --eval "db.dropDatabase()"')