Index: third_party/twisted_8_1/twisted/scripts/tap2rpm.py |
diff --git a/third_party/twisted_8_1/twisted/scripts/tap2rpm.py b/third_party/twisted_8_1/twisted/scripts/tap2rpm.py |
deleted file mode 100644 |
index 601555d83794bbd40bf4eee9059ad12b14edc9b4..0000000000000000000000000000000000000000 |
--- a/third_party/twisted_8_1/twisted/scripts/tap2rpm.py |
+++ /dev/null |
@@ -1,273 +0,0 @@ |
-# based off the tap2deb.py file |
-# tap2rpm.py built by Sean Reifschneider, <jafo@tummy.com> |
- |
-# TODO: need to implement log-file rotation |
- |
-import sys, os, shutil, time, glob |
- |
-from twisted.python import usage |
-from twisted.scripts import tap2deb |
- |
- |
-################################# |
-# data that goes in /etc/inittab |
-initFileData = '''\ |
-#!/bin/sh |
-# |
-# Startup script for a Twisted service. |
-# |
-# chkconfig: - 85 15 |
-# description: Start-up script for the Twisted service "%(tap_file)s". |
- |
-PATH=/usr/bin:/bin:/usr/sbin:/sbin |
- |
-pidfile=/var/run/%(rpm_file)s.pid |
-rundir=/var/lib/twisted-taps/%(rpm_file)s/ |
-file=/etc/twisted-taps/%(tap_file)s |
-logfile=/var/log/%(rpm_file)s.log |
- |
-# load init function library |
-. /etc/init.d/functions |
- |
-[ -r /etc/default/%(rpm_file)s ] && . /etc/default/%(rpm_file)s |
- |
-# check for required files |
-if [ ! -x /usr/bin/twistd ] |
-then |
- echo "$0: Aborting, no /usr/bin/twistd found" |
- exit 0 |
-fi |
-if [ ! -r "$file" ] |
-then |
- echo "$0: Aborting, no file $file found." |
- exit 0 |
-fi |
- |
-# set up run directory if necessary |
-if [ ! -d "${rundir}" ] |
-then |
- mkdir -p "${rundir}" |
-fi |
- |
- |
-case "$1" in |
- start) |
- echo -n "Starting %(rpm_file)s: twistd" |
- daemon twistd \\ |
- --pidfile=$pidfile \\ |
- --rundir=$rundir \\ |
- --%(twistd_option)s=$file \\ |
- --logfile=$logfile |
- status %(rpm_file)s |
- ;; |
- |
- stop) |
- echo -n "Stopping %(rpm_file)s: twistd" |
- kill `cat "${pidfile}"` |
- status %(rpm_file)s |
- ;; |
- |
- restart) |
- "${0}" stop |
- "${0}" start |
- ;; |
- |
- *) |
- echo "Usage: ${0} {start|stop|restart|}" >&2 |
- exit 1 |
- ;; |
-esac |
- |
-exit 0 |
-''' |
- |
-####################################### |
-# the data for creating the spec file |
-specFileData = '''\ |
-Summary: %(description)s |
-Name: %(rpm_file)s |
-Version: %(version)s |
-Release: 1 |
-Copyright: Unknown |
-Group: Networking/Daemons |
-Source: %(tarfile_basename)s |
-BuildRoot: /var/tmp/%%{name}-%%{version}-root |
-Requires: /usr/bin/twistd |
-BuildArch: noarch |
- |
-%%description |
-%(long_description)s |
- |
-%%prep |
-%%setup |
-%%build |
- |
-%%install |
-[ ! -z "$RPM_BUILD_ROOT" -a "$RPM_BUILD_ROOT" != '/' ] \ |
- && rm -rf "$RPM_BUILD_ROOT" |
-mkdir -p "$RPM_BUILD_ROOT"/etc/twisted-taps |
-mkdir -p "$RPM_BUILD_ROOT"/etc/init.d |
-mkdir -p "$RPM_BUILD_ROOT"/var/lib/twisted-taps |
-cp "%(tap_file)s" "$RPM_BUILD_ROOT"/etc/twisted-taps/ |
-cp "%(rpm_file)s.init" "$RPM_BUILD_ROOT"/etc/init.d/"%(rpm_file)s" |
- |
-%%clean |
-[ ! -z "$RPM_BUILD_ROOT" -a "$RPM_BUILD_ROOT" != '/' ] \ |
- && rm -rf "$RPM_BUILD_ROOT" |
- |
-%%post |
-/sbin/chkconfig --add %(rpm_file)s |
-/sbin/chkconfig --level 35 %(rpm_file)s |
-/etc/init.d/%(rpm_file)s start |
- |
-%%preun |
-/etc/init.d/%(rpm_file)s stop |
-/sbin/chkconfig --del %(rpm_file)s |
- |
-%%files |
-%%defattr(-,root,root) |
-%%attr(0755,root,root) /etc/init.d/%(rpm_file)s |
-%%attr(0660,root,root) /etc/twisted-taps/%(tap_file)s |
- |
-%%changelog |
-* %(date)s %(maintainer)s |
-- Created by tap2rpm: %(rpm_file)s (%(version)s) |
-''' |
- |
-############################### |
-class MyOptions(usage.Options): |
- optFlags = [["unsigned", "u"]] |
- optParameters = [ |
- ["tapfile", "t", "twistd.tap"], |
- ["maintainer", "m", ""], |
- ["protocol", "p", ""], |
- ["description", "e", ""], |
- ["long_description", "l", ""], |
- ["set-version", "V", "1.0"], |
- ["rpmfile", "r", None], |
- ["type", "y", "tap", "type of configuration: 'tap', 'xml, " |
- "'source' or 'python'"], |
- ] |
- |
- #zsh_altArgDescr = {"foo":"use this description for foo instead"} |
- #zsh_multiUse = ["foo", "bar"] |
- #zsh_mutuallyExclusive = [("foo", "bar"), ("bar", "baz")] |
- zsh_actions = {"type":"(tap xml source python)", |
- "rpmfile":'_files -g "*.rpm"'} |
- #zsh_actionDescr = {"logfile":"log file name", "random":"random seed"} |
- |
- |
-type_dict = { |
- 'tap': 'file', |
- 'python': 'python', |
- 'source': 'source', |
- 'xml': 'xml', |
-} |
- |
- |
-########################## |
-def makeBuildDir(baseDir): |
- '''Set up the temporary directory for building RPMs. |
- Returns: Tuple: ( buildDir, rpmrcFile ) |
- ''' |
- import random, string |
- |
- # make top directory |
- oldMask = os.umask(0077) |
- while 1: |
- tmpDir = os.path.join(baseDir, 'tap2rpm-%s-%s' % ( os.getpid(), |
- random.randint(0, 999999999) )) |
- if not os.path.exists(tmpDir): |
- os.makedirs(tmpDir) |
- break |
- os.umask(oldMask) |
- |
- # set up initial directory contents |
- os.makedirs(os.path.join(tmpDir, 'RPMS', 'noarch')) |
- os.makedirs(os.path.join(tmpDir, 'SPECS')) |
- os.makedirs(os.path.join(tmpDir, 'BUILD')) |
- os.makedirs(os.path.join(tmpDir, 'SOURCES')) |
- os.makedirs(os.path.join(tmpDir, 'SRPMS')) |
- |
- # set up rpmmacros file |
- macroFile = os.path.join(tmpDir, 'rpmmacros') |
- rcFile = os.path.join(tmpDir, 'rpmrc') |
- rpmrcData = open('/usr/lib/rpm/rpmrc', 'r').read() |
- rpmrcData = string.replace(rpmrcData, '~/.rpmmacros', macroFile) |
- fp = open(macroFile, 'w') |
- fp.write('%%_topdir %s\n' % tmpDir) |
- fp.close() |
- |
- # set up the rpmrc file |
- fp = open(rcFile, 'w') |
- fp.write(rpmrcData) |
- fp.close() |
- |
- return(( tmpDir, rcFile )) |
- |
- |
-########## |
-def run(): |
- # parse options |
- try: |
- config = MyOptions() |
- config.parseOptions() |
- except usage.error, ue: |
- sys.exit("%s: %s" % (sys.argv[0], ue)) |
- |
- # set up some useful local variables |
- tap_file = config['tapfile'] |
- base_tap_file = os.path.basename(config['tapfile']) |
- protocol = (config['protocol'] or os.path.splitext(base_tap_file)[0]) |
- rpm_file = config['rpmfile'] or 'twisted-'+protocol |
- version = config['set-version'] |
- maintainer = config['maintainer'] |
- description = config['description'] or ('A TCP server for %(protocol)s' % |
- vars()) |
- long_description = (config['long_description'] |
- or 'Automatically created by tap2deb') |
- twistd_option = type_dict[config['type']] |
- date = time.strftime('%a %b %d %Y', time.localtime(time.time())) |
- directory = rpm_file + '-' + version |
- python_version = '%s.%s' % sys.version_info[:2] |
- |
- # set up a blank maintainer if not present |
- if not maintainer: |
- maintainer = 'tap2rpm' |
- |
- # create source archive directory |
- tmp_dir, rpmrc_file = makeBuildDir('/var/tmp') |
- source_dir = os.path.join(tmp_dir, directory) |
- os.makedirs(source_dir) |
- |
- # populate source directory |
- tarfile_name = source_dir + '.tar.gz' |
- tarfile_basename = os.path.basename(tarfile_name) |
- tap2deb.save_to_file(os.path.join(source_dir, '%s.spec' % rpm_file), |
- specFileData % vars()) |
- tap2deb.save_to_file(os.path.join(source_dir, '%s.init' % rpm_file), |
- initFileData % vars()) |
- shutil.copy(tap_file, source_dir) |
- |
- # create source tar |
- os.system('cd "%(tmp_dir)s"; tar cfz "%(tarfile_name)s" "%(directory)s"' |
- % vars()) |
- |
- # build rpm |
- print 'Starting build...' |
- print '=' * 70 |
- sys.stdout.flush() |
- os.system('rpmbuild -ta --rcfile "%s" %s' % ( rpmrc_file, tarfile_name )) |
- print 'Done with build...' |
- print '=' * 70 |
- |
- # copy the RPMs to the local directory |
- rpm_path = glob.glob(os.path.join(tmp_dir, 'RPMS', 'noarch', '*'))[0] |
- srpm_path = glob.glob(os.path.join(tmp_dir, 'SRPMS', '*'))[0] |
- print 'Writing "%s"...' % os.path.basename(rpm_path) |
- shutil.copy(rpm_path, '.') |
- print 'Writing "%s"...' % os.path.basename(srpm_path) |
- shutil.copy(srpm_path, '.') |
- |
- # remove the build directory |
- shutil.rmtree(tmp_dir) |