public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
From: "Devan Franchini" <twitch153@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Subject: [gentoo-commits] proj/webapp-config:master commit in: WebappConfig/
Date: Tue, 29 Oct 2013 19:13:28 +0000 (UTC)	[thread overview]
Message-ID: <1383073728.49445ace79dfeb223d826960ce0fc8539f75c9a8.twitch153@gentoo> (raw)

commit:     49445ace79dfeb223d826960ce0fc8539f75c9a8
Author:     Devan Franchini <twitch153 <AT> gentoo <DOT> org>
AuthorDate: Tue Oct 29 19:08:48 2013 +0000
Commit:     Devan Franchini <twitch153 <AT> gentoo <DOT> org>
CommitDate: Tue Oct 29 19:08:48 2013 +0000
URL:        http://git.overlays.gentoo.org/gitweb/?p=proj/webapp-config.git;a=commit;h=49445ace

WebappConfig/config.py: Modifies default interpolation style.

Due to python3.2 using one interpolation style when running ConfigParser
it was necessary to change the interpolation style to the Extended
Interpolation style which allows ConfigParser to interpolate such
variables that follow the style of ${} in config.py and the config
file in /etc/vhosts/webapp-config. For total backwards compatibility
we also needed to change the interpolation style being used in config.py
because it was using a Basic Interpolation style of %(variable)s.
This change has been tested with both python3.2 and python2.7.

---
 WebappConfig/config.py | 54 +++++++++++++++++++++++++++-----------------------
 1 file changed, 29 insertions(+), 25 deletions(-)

diff --git a/WebappConfig/config.py b/WebappConfig/config.py
index c4b424b..1c09488 100644
--- a/WebappConfig/config.py
+++ b/WebappConfig/config.py
@@ -26,6 +26,7 @@ try:
     import configparser
     if sys.version_info >= (3, 2):
         from configparser import ConfigParser as configparser_ConfigParser
+        from configparser import ExtendedInterpolation
     else:
         from configparser import SafeConfigParser as configparser_ConfigParser
 except ImportError:
@@ -53,7 +54,10 @@ class BashConfigParser(configparser_ConfigParser):
 
     def __init__(self, defaults=None):
         self.error_action = 1
-        configparser_ConfigParser.__init__(self, defaults)
+        if sys.hexversion >= 0x3000000:
+            configparser_ConfigParser.__init__(self, defaults, interpolation=ExtendedInterpolation())
+        else:
+            configparser_ConfigParser.__init__(self, defaults)
 
     def on_error(self, action = 0):
         self.error_action = action
@@ -244,7 +248,7 @@ class Config:
             'vhost_config_uid'             : str(os.getuid()),
             'vhost_config_virtual_files'   : 'virtual',
             'vhost_config_default_dirs'    : 'default-owned',
-            'vhost_config_dir'             : '%(vhost_root)s/conf',
+            'vhost_config_dir'             : '${vhost_root}/conf',
             'vhost_htdocs_insecure'        : 'htdocs',
             'vhost_htdocs_secure'          : 'htdocs-secure',
             'vhost_perms_serverowned_dir'  : '0775',
@@ -266,16 +270,16 @@ class Config:
             'vhost_server_gid'  : 'root',
             'my_persistroot'    : '/var/db/webapps',
             'wa_installsbase'   : 'installs',
-            'vhost_root'        : '/var/www/%(vhost_hostname)s',
-            'g_htdocsdir'       : '%(vhost_root)s/%(my_htdocsbase)s',
-            'my_appdir'         : '%(my_approot)s/%(my_appsuffix)s',
-            'my_htdocsdir'      : '%(my_appdir)s/htdocs',
-            'my_persistdir'     : '%(my_persistroot)s/%(my_appsuffix)s',
-            'my_hostrootdir'    : '%(my_appdir)s/%(my_hostrootbase)s',
-            'my_cgibindir'      : '%(my_hostrootdir)s/%(my_cgibinbase)s',
-            'my_iconsdir'       : '%(my_hostrootdir)s/%(my_iconsbase)s',
-            'my_errorsdir'      : '%(my_hostrootdir)s/%(my_errorsbase)s',
-            'g_cgibindir'      : '%(vhost_root)s/%(my_cgibinbase)s',
+            'vhost_root'        : '/var/www/${vhost_hostname}',
+            'g_htdocsdir'       : '${vhost_root}/${my_htdocsbase}',
+            'my_appdir'         : '${my_approot}/${my_appsuffix}',
+            'my_htdocsdir'      : '${my_appdir}/htdocs',
+            'my_persistdir'     : '${my_persistroot}/${my_appsuffix}',
+            'my_hostrootdir'    : '${my_appdir}/${my_hostrootbase}',
+            'my_cgibindir'      : '${my_hostrootdir}/${my_cgibinbase}',
+            'my_iconsdir'       : '${my_hostrootdir}/${my_iconsbase}',
+            'my_errorsdir'      : '${my_hostrootdir}/${my_errorsbase}',
+            'g_cgibindir'      : '${vhost_root}/${my_cgibinbase}',
             'my_approot'        : '/usr/share/webapps',
             'package_manager'   : 'portage',
             'allow_absolute'    : 'no',
@@ -283,15 +287,15 @@ class Config:
             'my_cgibinbase'     : 'cgi-bin',
             'my_iconsbase'      : 'icons',
             'my_errorsbase'     : 'error',
-            'my_sqlscriptsdir'  : '%(my_appdir)s/sqlscripts',
-            'my_hookscriptsdir' : '%(my_appdir)s/hooks',
-            'my_serverconfigdir': '%(my_appdir)s/conf',
-            'wa_configlist'     : '%(my_appdir)s/config-files',
-            'wa_solist'         : '%(my_appdir)s/server-owned-files',
-            'wa_virtuallist'    : '%(my_appdir)s/virtuals',
-            'wa_installs'       : '%(my_persistdir)s/%(wa_installsbase)s',
+            'my_sqlscriptsdir'  : '${my_appdir}/sqlscripts',
+            'my_hookscriptsdir' : '${my_appdir}/hooks',
+            'my_serverconfigdir': '${my_appdir}/conf',
+            'wa_configlist'     : '${my_appdir}/config-files',
+            'wa_solist'         : '${my_appdir}/server-owned-files',
+            'wa_virtuallist'    : '${my_appdir}/virtuals',
+            'wa_installs'       : '${my_persistdir}/${wa_installsbase}',
             'wa_postinstallinfo':
-            '%(my_appdir)s/post-install-instructions.txt',
+            '${my_appdir}/post-install-instructions.txt',
             }
 
         # Setup basic defaults
@@ -338,9 +342,9 @@ class Config:
             self.config.set('USER', 'persist_suffix', '/'.join([cat,pn,pvr]))
 
             if os.path.isdir(new_layout):
-                self.config.set('USER', 'my_appsuffix', '%(cat)s/%(pn)s/%(pvr)s')
+                self.config.set('USER', 'my_appsuffix', '${cat}/${pn}/${pvr}')
             elif os.path.isdir(old_layout):
-                self.config.set('USER', 'my_appsuffix', '%(pn)s/%(pvr)s')
+                self.config.set('USER', 'my_appsuffix', '${pn}/${pvr}')
                 self.config.set('USER', 'cat', '')
             else:
                 OUT.die('Unable to determine location of master copy')
@@ -349,7 +353,7 @@ class Config:
             OUT.debug('Checking for old layout', 7)
 
             if os.path.isdir(old_layout):
-                self.config.set('USER', 'my_appsuffix', '%(pn)s/%(pvr)s')
+                self.config.set('USER', 'my_appsuffix', '${pn}/${pvr}')
                 self.config.set('USER', 'cat', '')
                 # no category info at all is available, so drop it from persist_suffix
                 self.config.set('USER', 'persist_suffix', '/'.join([pn,pvr]))
@@ -920,10 +924,10 @@ class Config:
             if (self.config.has_option('USER', 'g_secure') and
                 self.config.getboolean('USER', 'g_secure')):
                 self.config.set('USER', 'my_htdocsbase',
-                                '%(vhost_htdocs_secure)s')
+                                '${vhost_htdocs_secure}')
             else:
                 self.config.set('USER', 'my_htdocsbase',
-                                '%(vhost_htdocs_insecure)s')
+                                '${vhost_htdocs_insecure}')
 
         # set the action to be performed
         work = ['install', 'clean', 'upgrade', 'list_installs',


             reply	other threads:[~2013-10-29 19:13 UTC|newest]

Thread overview: 81+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-10-29 19:13 Devan Franchini [this message]
  -- strict thread matches above, loose matches on Subject: below --
2017-06-22 23:04 [gentoo-commits] proj/webapp-config:master commit in: WebappConfig/ Devan Franchini
2017-02-16  3:09 Devan Franchini
2017-02-16  3:09 Devan Franchini
2017-02-16  3:09 Devan Franchini
2017-02-16  3:09 Devan Franchini
2016-05-12 12:42 Anthony G. Basile
2015-07-11  1:27 Devan Franchini
2015-07-03  4:50 Devan Franchini
2015-07-02 16:49 Devan Franchini
2015-06-19 22:38 Devan Franchini
2015-06-19 19:52 Devan Franchini
2015-06-19 19:52 Devan Franchini
2015-06-19 19:52 Devan Franchini
2015-06-19 19:52 Devan Franchini
2015-06-19 19:52 Devan Franchini
2015-06-19 19:52 Devan Franchini
2015-06-19 19:52 Devan Franchini
2015-06-19 19:52 Devan Franchini
2015-06-19 19:52 Devan Franchini
2015-06-19 19:52 Devan Franchini
2015-06-19 19:52 Devan Franchini
2015-06-19 19:52 Devan Franchini
2015-06-19 19:52 Devan Franchini
2015-06-19 19:52 Devan Franchini
2014-01-25  3:17 Devan Franchini
2014-01-25  3:14 Devan Franchini
2014-01-25  3:14 Devan Franchini
2014-01-25  3:14 Devan Franchini
2014-01-25  3:14 Devan Franchini
2014-01-25  3:14 Devan Franchini
2014-01-25  3:14 Devan Franchini
2014-01-25  3:14 Devan Franchini
2014-01-25  3:14 Devan Franchini
2014-01-25  3:14 Devan Franchini
2014-01-25  3:14 Devan Franchini
2014-01-25  3:14 Devan Franchini
2014-01-02  1:47 Devan Franchini
2014-01-01  1:09 Devan Franchini
2013-10-29  2:40 Devan Franchini
2013-10-29  2:40 Devan Franchini
2013-10-29  2:40 Devan Franchini
2013-10-29  2:40 Devan Franchini
2013-10-29  2:40 Devan Franchini
2013-10-29  2:18 Devan Franchini
2013-10-29  2:18 Devan Franchini
2013-10-29  2:15 Devan Franchini
2013-10-10  0:35 Devan Franchini
2013-09-26  4:03 Devan Franchini
2013-09-26  3:44 Devan Franchini
2013-09-24 18:20 Anthony G. Basile
2013-09-24 18:20 Anthony G. Basile
2013-09-24 18:20 Anthony G. Basile
2013-09-24 18:20 Anthony G. Basile
2013-08-06 12:28 Anthony G. Basile
2013-08-06 11:00 Anthony G. Basile
2013-08-06 11:00 Anthony G. Basile
2013-08-03 13:24 Anthony G. Basile
2013-08-03 13:24 Anthony G. Basile
2013-08-03 13:24 Anthony G. Basile
2013-04-22  0:52 Anthony G. Basile
2013-03-23  4:05 Anthony G. Basile
2013-03-14  2:19 Anthony G. Basile
2013-03-09 13:45 Anthony G. Basile
2013-02-12  3:40 Anthony G. Basile
2012-06-29 13:00 Anthony G. Basile
2012-06-29 13:00 Anthony G. Basile
2012-06-29 13:00 Anthony G. Basile
2012-06-29 13:00 Anthony G. Basile
2012-06-29 13:00 Anthony G. Basile
2012-06-29 13:00 Anthony G. Basile
2012-06-29 13:00 Anthony G. Basile
2011-12-30 17:52 Anthony G. Basile
2011-12-30 17:50 Anthony G. Basile
2011-12-30 17:34 Anthony G. Basile
2011-12-30 17:23 Anthony G. Basile
2011-12-30 17:11 Anthony G. Basile
2011-12-30 16:50 Anthony G. Basile
2011-12-30 16:42 Anthony G. Basile
2011-08-06  1:51 Anthony G. Basile
2011-06-14 15:23 Anthony G. Basile

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1383073728.49445ace79dfeb223d826960ce0fc8539f75c9a8.twitch153@gentoo \
    --to=twitch153@gentoo.org \
    --cc=gentoo-commits@lists.gentoo.org \
    --cc=gentoo-dev@lists.gentoo.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox