source: lliurex-moodle/trunk/fuentes/lliurex-moodle.install-files/usr/share/lliurex-moodle/update_moodle_sql.py @ 1330

Last change on this file since 1330 was 1330, checked in by kbut, 4 years ago

add script to sync users on install

File size: 1.8 KB
Line 
1#!/usr/bin/python
2
3import MySQLdb
4import ConfigParser
5import time
6import os
7import subprocess as s
8import sys
9import bcrypt
10p = open( "/etc/lliurex-secrets/passgen/ldap.secret", "r" )
11passwd= p.read().rstrip('\n')
12rc = 0
13adminpassword=""
14while (rc == 0 and adminpassword=="" ):
15        process = s.Popen(['zenity --forms --add-password="Password" --text="Introduce la contrasea para el administrador del moodle"'],shell=True,stdout=s.PIPE,stderr=s.PIPE)
16        result = process.communicate()
17        adminpassword = result[0].strip()
18        rc = process.returncode
19        if rc==1:
20                sys.exit()
21
22try:
23                config = ConfigParser.ConfigParser()
24                config.read('/root/.my.cnf')
25                user = config.get("mysql","user")
26                password= config.get("mysql","password")
27except:
28                user = False
29                password = False
30
31try:
32                connection=MySQLdb.connect(host="localhost",user=user,passwd=password,db='moodle')
33                cursor = connection.cursor()
34                try:
35                                #sql="UPDATE `moodle`.`mdl_config_plugins` SET `value` = '"+passwd+"' WHERE `mdl_config_plugins`.`name` like 'bind_pw' and `mdl_config_plugins`.`plugin` like 'auth/ldap';"
36                                #cursor.execute(sql)
37                                #connection.commit()
38                                #sql="UPDATE `moodle`.`mdl_config_plugins` SET `value` = 'cn=teachers,ou=Profiles,ou=Groups,dc=ma5,dc=lliurex,dc=net' WHERE `mdl_config_plugins`.`name` like 'creators' and `mdl_config_plugins`.`plugin` like 'auth/ldap';"
39                                #cursor.execute(sql)
40                                #connection.commit()
41
42                                passwordcrypted = bcrypt.hashpw(adminpassword,bcrypt.gensalt(10))
43                                sql="UPDATE `moodle`.`mdl_user` SET `password` = '" + passwordcrypted + "' WHERE `mdl_user`.`username` = 'admin';"
44                                cursor.execute(sql)
45                                connection.commit()
46
47
48                except Exception as e:
49                                print e
50                cursor.close()
51
52except:
53                print "[!] Error connecting to MySQL [!]"
54
55os.system('sudo -u www-data php /usr/share/moodle/admin/cli/purge_caches.php')
56
Note: See TracBrowser for help on using the repository browser.