annotate roundup/dist/command/bdist_rpm.py @ 6739:00fe67eb8a91

Update locations templates and locale files are stored Installing on a new ubuntu 22.04 venv at /tmp/roundup, I found the locale and template files installed under /tmp/roundup2/lib/python3.10/site-packages/usr/local/share which was unexpected. /tmp/roundup2/lib/python3.10/site-packages/tmp/roundup2/share would be expected. Why sys.prefix (/tmp/roundup2) was not being used but sys.base_prefix (/usr) and 'local' were added in I have no idea. In any case, updated admin and i18n code to find the files in this location. Suggested building a venv for installation with commands in installation.txt. Removed search for templates top level directory. Was used for the old location of the tracker templates pre-2009 when they were moved under share/roundup/templates. left print statemts for debugging directory search in admin templates. They are disabled by a variable set to False. At some point will add pragma's to admin to set debugging and other options see issue 2551103.
author John Rouillard <rouilj@ieee.org>
date Tue, 28 Jun 2022 23:16:47 -0400
parents 42bf0a707763
children 551fec9c4cfc
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
4068
e233d7a66343 Refactor setup.py.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff changeset
1 #
e233d7a66343 Refactor setup.py.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff changeset
2 # Copyright (C) 2009 Stefan Seefeld
e233d7a66343 Refactor setup.py.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff changeset
3 # All rights reserved.
e233d7a66343 Refactor setup.py.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff changeset
4 # For license terms see the file COPYING.txt.
e233d7a66343 Refactor setup.py.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff changeset
5 #
6647
42bf0a707763 issue2551183 - Replace references to distutils in roundup/dist/command
John Rouillard <rouilj@ieee.org>
parents: 4068
diff changeset
6 # converted to not use distutils 2021
42bf0a707763 issue2551183 - Replace references to distutils in roundup/dist/command
John Rouillard <rouilj@ieee.org>
parents: 4068
diff changeset
7 from setuptools.command.bdist_rpm import bdist_rpm as base
4068
e233d7a66343 Refactor setup.py.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff changeset
8 import os
e233d7a66343 Refactor setup.py.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff changeset
9
6647
42bf0a707763 issue2551183 - Replace references to distutils in roundup/dist/command
John Rouillard <rouilj@ieee.org>
parents: 4068
diff changeset
10 # cribbed from 2.7 distutils
42bf0a707763 issue2551183 - Replace references to distutils in roundup/dist/command
John Rouillard <rouilj@ieee.org>
parents: 4068
diff changeset
11 def write_file (filename, contents):
42bf0a707763 issue2551183 - Replace references to distutils in roundup/dist/command
John Rouillard <rouilj@ieee.org>
parents: 4068
diff changeset
12 """Create a file with the specified name and write 'contents' (a
42bf0a707763 issue2551183 - Replace references to distutils in roundup/dist/command
John Rouillard <rouilj@ieee.org>
parents: 4068
diff changeset
13 sequence of strings without line terminators) to it.
42bf0a707763 issue2551183 - Replace references to distutils in roundup/dist/command
John Rouillard <rouilj@ieee.org>
parents: 4068
diff changeset
14 """
42bf0a707763 issue2551183 - Replace references to distutils in roundup/dist/command
John Rouillard <rouilj@ieee.org>
parents: 4068
diff changeset
15 f = open(filename, "w")
42bf0a707763 issue2551183 - Replace references to distutils in roundup/dist/command
John Rouillard <rouilj@ieee.org>
parents: 4068
diff changeset
16 try:
42bf0a707763 issue2551183 - Replace references to distutils in roundup/dist/command
John Rouillard <rouilj@ieee.org>
parents: 4068
diff changeset
17 for line in contents:
42bf0a707763 issue2551183 - Replace references to distutils in roundup/dist/command
John Rouillard <rouilj@ieee.org>
parents: 4068
diff changeset
18 f.write(line + "\n")
42bf0a707763 issue2551183 - Replace references to distutils in roundup/dist/command
John Rouillard <rouilj@ieee.org>
parents: 4068
diff changeset
19 finally:
42bf0a707763 issue2551183 - Replace references to distutils in roundup/dist/command
John Rouillard <rouilj@ieee.org>
parents: 4068
diff changeset
20 f.close()
42bf0a707763 issue2551183 - Replace references to distutils in roundup/dist/command
John Rouillard <rouilj@ieee.org>
parents: 4068
diff changeset
21
4068
e233d7a66343 Refactor setup.py.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff changeset
22 class bdist_rpm(base):
e233d7a66343 Refactor setup.py.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff changeset
23
e233d7a66343 Refactor setup.py.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff changeset
24 def finalize_options(self):
e233d7a66343 Refactor setup.py.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff changeset
25 base.finalize_options(self)
e233d7a66343 Refactor setup.py.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff changeset
26 if self.install_script:
e233d7a66343 Refactor setup.py.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff changeset
27 # install script is overridden. skip default
e233d7a66343 Refactor setup.py.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff changeset
28 return
e233d7a66343 Refactor setup.py.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff changeset
29 # install script option must be file name.
e233d7a66343 Refactor setup.py.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff changeset
30 # create the file in rpm build directory.
e233d7a66343 Refactor setup.py.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff changeset
31 install_script = os.path.join(self.rpm_base, "install.sh")
e233d7a66343 Refactor setup.py.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff changeset
32 self.mkpath(self.rpm_base)
e233d7a66343 Refactor setup.py.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff changeset
33 self.execute(write_file, (install_script, [
e233d7a66343 Refactor setup.py.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff changeset
34 ("%s setup.py install --root=$RPM_BUILD_ROOT "
e233d7a66343 Refactor setup.py.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff changeset
35 "--record=ROUNDUP_FILES") % self.python,
e233d7a66343 Refactor setup.py.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff changeset
36 # allow any additional extension for man pages
e233d7a66343 Refactor setup.py.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff changeset
37 # (rpm may compress them to .gz or .bz2)
e233d7a66343 Refactor setup.py.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff changeset
38 # man page here is any file
e233d7a66343 Refactor setup.py.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff changeset
39 # with single-character extension
e233d7a66343 Refactor setup.py.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff changeset
40 # in man directory
e233d7a66343 Refactor setup.py.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff changeset
41 "sed -e 's,\(/man/.*\..\)$,\\1*,' "
e233d7a66343 Refactor setup.py.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff changeset
42 "<ROUNDUP_FILES >INSTALLED_FILES",
e233d7a66343 Refactor setup.py.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff changeset
43 ]), "writing '%s'" % install_script)
e233d7a66343 Refactor setup.py.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff changeset
44 self.install_script = install_script
e233d7a66343 Refactor setup.py.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff changeset
45

Roundup Issue Tracker: http://roundup-tracker.org/