This repository has been archived by the owner on Mar 8, 2019. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 1
/
portail.py
executable file
·85 lines (63 loc) · 1.76 KB
/
portail.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
72
73
74
75
76
77
from fabric.api import *
@task(default=True)
@roles('portail')
def main():
print("portail.main")
@task
@roles('portail')
def add_portail(login_asso):
print("Ajout sql dans la base du portail pour la redirection avec le reverse proxy")
sudo('echo %s >> /root/assos.list' % (login_asso))
generate_vhost_portail()
@task
@roles('portail')
def del_portail(login_asso):
try:
print("Suppression sql dans la base du portail pour la redirection avec le reverse proxy")
sudo("sed -i '/%s/d' /root/assos.list" % login_asso)
generate_vhost_portail()
except:
pass
# Pour chaque ligne de /root/assos.list
# generer un fichier de conf nginx php ou python
@task
@roles('portail')
def generate_vhost_portail():
sudo("""while read -r line
do
ligne=`echo ${line}|grep -v "python"|awk -F " " '{print $1}'`
cat > /etc/nginx/assos/$ligne.conf <<EOF
location /$ligne/ {
proxy_pass http://web.mde.utc;
}
EOF
cat > /etc/nginx/assos/$ligne.conf-ssl <<EOF
location /$ligne/ {
proxy_pass https://web.mde.utc;
}
EOF
ligne=`echo ${line}|grep "python"|awk -F " " '{print $1}'`
cat > /etc/nginx/assos/$ligne.conf <<EOF
location /$ligne/ {
proxy_pass http://python.mde.utc;
}
EOF
cat > /etc/nginx/assos/$ligne.conf-ssl <<EOF
location /$ligne/ {
proxy_pass http://python.mde.utc;
}
EOF
done < '/root/assos.list'""")
sudo('service nginx reload')
@task
@roles('portail')
def change_for_python(login_asso):
print("Le site sera desormais en python")
sudo('sed -i "s/%s/%s python/" /root/assos.list' % (login_asso, login_asso))
generate_vhost_portail()
@task
@roles('portail')
def change_for_php(login_asso):
print("Le site sera desormais en php")
sudo('sed -i "s/%s python/%s/" /root/assos.list' % (login_asso, login_asso))
generate_vhost_portail()