OLD | NEW |
1 # This file is part of the Adblock Plus web scripts, | 1 # This file is part of the Adblock Plus web scripts, |
2 # Copyright (C) 2006-present eyeo GmbH | 2 # Copyright (C) 2006-present eyeo GmbH |
3 # | 3 # |
4 # Adblock Plus is free software: you can redistribute it and/or modify | 4 # Adblock Plus is free software: you can redistribute it and/or modify |
5 # it under the terms of the GNU General Public License version 3 as | 5 # it under the terms of the GNU General Public License version 3 as |
6 # published by the Free Software Foundation. | 6 # published by the Free Software Foundation. |
7 # | 7 # |
8 # Adblock Plus is distributed in the hope that it will be useful, | 8 # Adblock Plus is distributed in the hope that it will be useful, |
9 # but WITHOUT ANY WARRANTY; without even the implied warranty of | 9 # but WITHOUT ANY WARRANTY; without even the implied warranty of |
10 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | 10 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
11 # GNU General Public License for more details. | 11 # GNU General Public License for more details. |
12 # | 12 # |
13 # You should have received a copy of the GNU General Public License | 13 # You should have received a copy of the GNU General Public License |
14 # along with Adblock Plus. If not, see <http://www.gnu.org/licenses/>. | 14 # along with Adblock Plus. If not, see <http://www.gnu.org/licenses/>. |
15 | 15 |
16 import os | 16 import os |
17 import subprocess | 17 import subprocess |
18 from sitescripts.utils import get_config | 18 from sitescripts.utils import get_config |
19 from sitescripts.subscriptions.bin.processTemplate import writeSubscriptions | 19 from sitescripts.subscriptions.bin.processTemplate import writeSubscriptions |
20 from tempfile import mkdtemp | 20 from tempfile import mkdtemp |
21 from shutil import rmtree | 21 from shutil import rmtree |
22 | 22 |
23 | 23 |
24 def update_recommendations(): | 24 def update_recommendations(): |
25 repository = get_config().get('extensions', 'subscriptions_repository') | 25 repository = get_config().get('extensions', 'subscriptions_repository') |
26 path = get_config().get('extensions', 'subscriptions_path').split('/') | 26 path = get_config().get('extensions', 'subscriptions_path').split('/') |
27 tempdir = mkdtemp(prefix='adblockplus') | 27 tempdir = mkdtemp(prefix='adblockplus') |
28 try: | 28 try: |
29 subprocess.check_call([ | 29 subprocess.check_call([ |
30 'hg', 'clone', '-q', '-U', repository, tempdir | 30 'hg', 'clone', '-q', '-U', repository, tempdir, |
31 ]) | 31 ]) |
32 subprocess.check_call([ | 32 subprocess.check_call([ |
33 'hg', 'up', '-q', '-R', tempdir, '-r', 'master' | 33 'hg', 'up', '-q', '-R', tempdir, '-r', 'master', |
34 ]) | 34 ]) |
35 writeSubscriptions('recommendations', os.path.join(tempdir, *path)) | 35 writeSubscriptions('recommendations', os.path.join(tempdir, *path)) |
36 if subprocess.check_output(['hg', 'stat', '-R', tempdir]) != '': | 36 if subprocess.check_output(['hg', 'stat', '-R', tempdir]) != '': |
37 subprocess.check_call([ | 37 subprocess.check_call([ |
38 'hg', 'commit', '-q', '-R', tempdir, '-u', 'hgbot', | 38 'hg', 'commit', '-q', '-R', tempdir, '-u', 'hgbot', |
39 '-m', 'Noissue - Updated list of recommended subscriptions' | 39 '-m', 'Noissue - Updated list of recommended subscriptions', |
40 ]) | 40 ]) |
41 subprocess.check_call([ | 41 subprocess.check_call([ |
42 'hg', 'push', '-q', '-R', tempdir, '-r', 'master' | 42 'hg', 'push', '-q', '-R', tempdir, '-r', 'master', |
43 ]) | 43 ]) |
44 finally: | 44 finally: |
45 rmtree(tempdir) | 45 rmtree(tempdir) |
46 | 46 |
47 | 47 |
48 if __name__ == '__main__': | 48 if __name__ == '__main__': |
49 update_recommendations() | 49 update_recommendations() |
OLD | NEW |