chiark / gitweb /
common.get_examples_dir() to get path to fdroidserver examples
authorHans-Christoph Steiner <hans@eds.org>
Fri, 17 Nov 2017 14:48:45 +0000 (15:48 +0100)
committerHans-Christoph Steiner <hans@eds.org>
Wed, 22 Nov 2017 10:40:16 +0000 (11:40 +0100)
fdroidserver/common.py
fdroidserver/init.py

index 8f1cfe04d7bc2f10ce77f68615a8891954b4af8c..c1b89d82f3673dc501a696278466c8954af80fb1 100644 (file)
@@ -2756,3 +2756,26 @@ def is_repo_file(filename):
             b'index-v1.json',
             b'categories.txt',
         ]
+
+
+def get_examples_dir():
+    '''Return the dir where the fdroidserver example files are available'''
+    examplesdir = None
+    tmp = os.path.dirname(sys.argv[0])
+    if os.path.basename(tmp) == 'bin':
+        egg_links = glob.glob(os.path.join(tmp, '..',
+                                           'local/lib/python3.*/site-packages/fdroidserver.egg-link'))
+        if egg_links:
+            # installed from local git repo
+            examplesdir = os.path.join(open(egg_links[0]).readline().rstrip(), 'examples')
+        else:
+            # try .egg layout
+            examplesdir = os.path.dirname(os.path.dirname(__file__)) + '/share/doc/fdroidserver/examples'
+            if not os.path.exists(examplesdir):  # use UNIX layout
+                examplesdir = os.path.dirname(tmp) + '/share/doc/fdroidserver/examples'
+    else:
+        # we're running straight out of the git repo
+        prefix = os.path.normpath(os.path.join(os.path.dirname(__file__), '..'))
+        examplesdir = prefix + '/examples'
+
+    return examplesdir
index 36c2bf448b2ae3fa70dd52875482ca7d625591a9..9fdb5836c0831285ce834d553f03f50882444a9d 100644 (file)
@@ -65,28 +65,10 @@ def main():
                         help=_("Do not prompt for Android SDK path, just fail"))
     options = parser.parse_args()
 
-    # find root install prefix
-    tmp = os.path.dirname(sys.argv[0])
-    examplesdir = None
-    if os.path.basename(tmp) == 'bin':
-        egg_links = glob.glob(os.path.join(tmp, '..',
-                                           'local/lib/python3.*/site-packages/fdroidserver.egg-link'))
-        if egg_links:
-            # installed from local git repo
-            examplesdir = os.path.join(open(egg_links[0]).readline().rstrip(), 'examples')
-        else:
-            # try .egg layout
-            examplesdir = os.path.dirname(os.path.dirname(__file__)) + '/share/doc/fdroidserver/examples'
-            if not os.path.exists(examplesdir):  # use UNIX layout
-                examplesdir = os.path.dirname(tmp) + '/share/doc/fdroidserver/examples'
-    else:
-        # we're running straight out of the git repo
-        prefix = os.path.normpath(os.path.join(os.path.dirname(__file__), '..'))
-        examplesdir = prefix + '/examples'
-
     aapt = None
     fdroiddir = os.getcwd()
     test_config = dict()
+    examplesdir = common.get_examples_dir()
     common.fill_config_defaults(test_config)
 
     # track down where the Android SDK is, the default is to use the path set