aboutsummaryrefslogtreecommitdiff
path: root/pomu
diff options
context:
space:
mode:
authorMykyta Holubakha <hilobakho@gmail.com>2017-06-11 04:19:27 +0300
committerMykyta Holubakha <hilobakho@gmail.com>2017-06-11 04:19:27 +0300
commit27bce136eb82a5033761c39015a96942705940a4 (patch)
tree1e5894b70685b2879ef27bf8917846899779a19e /pomu
parentcli: added fetch, install, uninstall commands (diff)
downloadpomu-27bce136eb82a5033761c39015a96942705940a4.tar.gz
pomu-27bce136eb82a5033761c39015a96942705940a4.tar.bz2
pomu-27bce136eb82a5033761c39015a96942705940a4.zip
Proper global error handling
Diffstat (limited to 'pomu')
-rw-r--r--pomu/cli.py36
-rw-r--r--pomu/repo/repo.py6
2 files changed, 22 insertions, 20 deletions
diff --git a/pomu/cli.py b/pomu/cli.py
index 25a9652..ab71861 100644
--- a/pomu/cli.py
+++ b/pomu/cli.py
@@ -44,32 +44,25 @@ def init(globalvars, list_repos, create, repo_dir, repo):
for prepo in portage_repos():
print('\t', prepo, portage_repo_path(prepo))
return
- try:
- if globalvars.no_portage:
- print(init_plain_repo(create, globalvars.repo_path).expect())
- else:
- print(init_portage_repo(create, repo, repo_dir).expect())
- except ResultException as e:
- print(str(e))
+ if globalvars.no_portage:
+ print(init_plain_repo(create, globalvars.repo_path).expect())
+ else:
+ print(init_portage_repo(create, repo, repo_dir).expect())
@main.command()
@pass_globals
def status(globalvars):
"""Display pomu status"""
- res = pomu_active_repo_(globalvars.no_portage, globalvars.repo_path)
- if res.is_ok():
- repo = res.ok()
- if repo.name:
- print('pomu is initialized for reporitory', repo.name, 'at', repo.root)
- else:
- print('pomu is initialized at', repo.root)
+ repo = pomu_active_repo_(globalvars.no_portage, globalvars.repo_path).expect()
+ if repo.name:
+ print('pomu is initialized for reporitory', repo.name, 'at', repo.root)
else:
- print('Error:', res.err())
+ print('pomu is initialized at', repo.root)
@main.command()
@click.argument('package', required=True)
@pass_globals
-def install(self):
+def install(globalvars):
res = dispatcher.install_package(package).expect()
print(res)
@@ -78,7 +71,7 @@ def install(self):
help='Specify the package to remove by uri, instead of its name')
@click.argument('package', required=True)
@pass_globals
-def uninstall(self):
+def uninstall(globalvars):
if uri:
res = dispatcher.uninstall_package(package).expect()
print(res)
@@ -93,3 +86,12 @@ def uninstall(self):
def fetch(self):
pkg = dispatcher.get_package(package).expect()
print('Fetched package', pkg.name, 'at', pkg.root)
+
+def main_():
+ try:
+ main.main(standalone_mode=False)
+ except ResultException as e:
+ print(str(e))
+
+if __name__ == '__main__':
+ main_()
diff --git a/pomu/repo/repo.py b/pomu/repo/repo.py
index 690869c..2d69a06 100644
--- a/pomu/repo/repo.py
+++ b/pomu/repo/repo.py
@@ -1,5 +1,5 @@
"""Subroutines with repositories"""
-from os import path, mkdirs, remove, rmdir
+from os import path, makedirs, remove, rmdir
from shutil import copy2
from git import Repo
@@ -48,7 +48,7 @@ class Repository():
if path.isfile(pf):
remove_file(pf)
r.commit('Removed package ' + package.name + ' successfully')
- return Result.Ok('Removed package ' + package.name ' successfully')
+ return Result.Ok('Removed package ' + package.name + ' successfully')
def remove_package(self, name):
pf = path.join(self.pomu_dir, package.name)
@@ -59,7 +59,7 @@ class Repository():
remove_file(path.join(self.root, insf))
remove_file(pf)
r.commit('Removed package ' + package.name + ' successfully')
- return Result.Ok('Removed package ' + package.name ' successfully')
+ return Result.Ok('Removed package ' + package.name + ' successfully')