| Index: sitescripts/management/bin/updateExternalFiles.py |
| =================================================================== |
| deleted file mode 100644 |
| --- a/sitescripts/management/bin/updateExternalFiles.py |
| +++ /dev/null |
| @@ -1,75 +0,0 @@ |
| -# coding: utf-8 |
| - |
| -# This file is part of the Adblock Plus web scripts, |
| -# Copyright (C) 2006-2015 Eyeo GmbH |
| -# |
| -# Adblock Plus is free software: you can redistribute it and/or modify |
| -# it under the terms of the GNU General Public License version 3 as |
| -# published by the Free Software Foundation. |
| -# |
| -# Adblock Plus is distributed in the hope that it will be useful, |
| -# but WITHOUT ANY WARRANTY; without even the implied warranty of |
| -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
| -# GNU General Public License for more details. |
| -# |
| -# You should have received a copy of the GNU General Public License |
| -# along with Adblock Plus. If not, see <http://www.gnu.org/licenses/>. |
| - |
| -import os, subprocess, codecs, urllib |
| -from sitescripts.utils import get_config, setupStderr |
| -from tempfile import mkdtemp |
| -from shutil import rmtree |
| - |
| -def updateExternalFiles(): |
| - settings = readSettings() |
| - for setting in settings.itervalues(): |
| - tempdir = mkdtemp(prefix='external') |
| - try: |
| - repoPath = setting['targetrepository'] |
| - targetPath = os.path.dirname(setting['targetfile']) |
| - filename = os.path.basename(setting['targetfile']) |
| - |
| - subprocess.check_call(['hg', 'clone', '-q', '-U', repoPath, tempdir]) |
| - subprocess.check_call(['hg', 'up', '-q', '-R', tempdir, '-r', 'default']) |
| - |
| - path = os.path.join(tempdir, targetPath) |
| - if not os.path.exists(path): |
| - os.makedirs(path) |
| - |
| - path = os.path.join(path, filename) |
| - exists = os.path.exists(path) |
| - file = codecs.open(path, 'wb', encoding='utf-8') |
| - data = urllib.urlopen(setting['source']).read().decode('utf-8') |
| - file.write(data) |
| - file.close() |
| - |
| - if subprocess.check_output(['hg', 'stat', '-R', tempdir]) != '': |
| - message = 'Updated copy of external file %s' |
| - if not exists: |
| - message = 'Added copy of external file %s' |
| - subprocess.check_call(['hg', 'commit', '-q', '-A', '-R', tempdir, '-u', 'hgbot', '-m', message % filename]) |
| - subprocess.call(['hg', 'push', '-q', '-R', tempdir]) |
| - finally: |
| - rmtree(tempdir) |
| - |
| -def readSettings(): |
| - result = {} |
| - for option, value in get_config().items('externalFiles'): |
| - if option.find('_') < 0: |
| - continue |
| - name, setting = option.rsplit('_', 2) |
| - if not setting in ('source', 'targetrepository', 'targetfile'): |
| - continue |
| - |
| - if not name in result: |
| - result[name] = { |
| - 'source': None, |
| - 'targetrepository': None, |
| - 'targetfile': None |
| - } |
| - result[name][setting] = value |
| - return result |
| - |
| -if __name__ == '__main__': |
| - setupStderr() |
| - updateExternalFiles() |