From: "Devan Franchini" <twitch153@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Subject: [gentoo-commits] proj/webapp-config:master commit in: WebappConfig/
Date: Sat, 25 Jan 2014 03:14:55 +0000 (UTC) [thread overview]
Message-ID: <1390619505.af1bd6b54ef751af96ec800e256a6e91412401e8.twitch153@gentoo> (raw)
commit: af1bd6b54ef751af96ec800e256a6e91412401e8
Author: Devan Franchini <twitch153 <AT> gentoo <DOT> org>
AuthorDate: Tue Nov 5 22:11:07 2013 +0000
Commit: Devan Franchini <twitch153 <AT> gentoo <DOT> org>
CommitDate: Sat Jan 25 03:11:45 2014 +0000
URL: http://git.overlays.gentoo.org/gitweb/?p=proj/webapp-config.git;a=commit;h=af1bd6b5
WebappConfig/db.py: Adds prune_db() function.
This function will check for "stray" webapp installation entries in
the installs files located in /var/db/webapps/<package name>/<version>.
This function is not implemented yet.
X-Gentoo-Bug: 490090
X-Gentoo-Bug-URL: https://bugs.gentoo.org/490090
---
WebappConfig/db.py | 37 +++++++++++++++++++++++++++++++++++++
1 file changed, 37 insertions(+)
diff --git a/WebappConfig/db.py b/WebappConfig/db.py
index 11e5dae..37bfdc9 100644
--- a/WebappConfig/db.py
+++ b/WebappConfig/db.py
@@ -424,6 +424,43 @@ class WebappDB(AppHierarchy):
return result
+ def prune_db(self):
+ '''
+ Prunes the installs files to ensure no webapp
+ is incorrectly listed as installed.
+ '''
+
+ loc = self.read_db()
+
+ if not loc and self.__v:
+ OUT.die('No virtual installs found!')
+
+ files = self.list_locations()
+ keys = sorted(loc)
+
+ for j in keys:
+ for i in loc[j]:
+ appdir = i[3].strip()
+ # We check to see if the webapp is installed.
+ if not os.path.exists(appdir+'/.webapp'):
+ if self.__v:
+ OUT.warn('No .webapp file found in dir: ')
+ OUT.warn(appdir)
+ OUT.warn('Assuming webapp is no longer installed.')
+ OUT.warn('Pruning entry from database.')
+
+ for installs in files.keys():
+ contents = open(installs).readlines()
+ new_entries = ''
+ for entry in contents:
+ # Grab all the other entries but the one that
+ # isn't installed.
+ if not re.search('.* ' + appdir +'\\n', entry):
+ new_entries += entry
+ f = open(installs, 'w')
+ f.write(new_entries)
+ f.close()
+
def has_installs(self):
''' Return True in case there are any virtual install locations
listed in the db file '''
next reply other threads:[~2014-01-25 3:15 UTC|newest]
Thread overview: 81+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-01-25 3:14 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-02 1:47 Devan Franchini
2014-01-01 1:09 Devan Franchini
2013-10-29 19:13 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=1390619505.af1bd6b54ef751af96ec800e256a6e91412401e8.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