aboutsummaryrefslogtreecommitdiffstats
path: root/bsie.app
diff options
context:
space:
mode:
authorMatthias Baumgartner <dev@igsor.net>2022-12-14 06:10:25 +0100
committerMatthias Baumgartner <dev@igsor.net>2022-12-14 06:10:25 +0100
commit559e643bb1fa39feefd2eb73847ad9420daf1deb (patch)
tree13243e2e25edd90d16789e6f6e4e473748f347a4 /bsie.app
parentedc747252a04675c46059215751719b6666a77f9 (diff)
downloadbsie-559e643bb1fa39feefd2eb73847ad9420daf1deb.tar.gz
bsie-559e643bb1fa39feefd2eb73847ad9420daf1deb.tar.bz2
bsie-559e643bb1fa39feefd2eb73847ad9420daf1deb.zip
bsie extraction and info apps
Diffstat (limited to 'bsie.app')
-rwxr-xr-xbsie.app49
1 files changed, 49 insertions, 0 deletions
diff --git a/bsie.app b/bsie.app
new file mode 100755
index 0000000..ba9cee7
--- /dev/null
+++ b/bsie.app
@@ -0,0 +1,49 @@
+"""BSIE tools.
+
+Part of the bsie module.
+A copy of the license is provided with the project.
+Author: Matthias Baumgartner, 2022
+"""
+# imports
+import argparse
+import typing
+
+# module imports
+import bsie
+import bsie.apps
+
+# exports
+__all__: typing.Sequence[str] = (
+ 'main',
+ )
+
+# config
+apps = {
+ 'index' : bsie.apps.index,
+ 'info' : bsie.apps.info,
+ }
+
+
+## code ##
+
+def main(argv):
+ """Black Star File System maintenance tools."""
+ parser = argparse.ArgumentParser(description=main.__doc__, prog='bsie')
+ parser.add_argument('--version', action='version',
+ version='%(prog)s version {}.{}.{}'.format(*bsie.version_info))
+ parser.add_argument('app', choices=apps.keys(),
+ help='Select the application to run.')
+ parser.add_argument('rest', nargs=argparse.REMAINDER)
+ # parse
+ args = parser.parse_args()
+ # run application
+ apps[args.app](args.rest)
+
+
+## main ##
+
+if __name__ == '__main__':
+ import sys
+ main(sys.argv[1:])
+
+## EOF ##