Installing a cloned app from a private repo

I have cloned a bitbucket repo containing a Frappe app named container_management. After cloning, i have seen that the name of the app is not same as the bitbucket (or git) changed the name by replacing the underscore with a hiphen- container-management. Than, i renamed it and trying install the app with this command -

bench install-app container_management

But there is an error -

Traceback (most recent call last):
 File "/usr/lib/python2.7/runpy.py", line 162, in _run_module_as_main
"__main__", fname, loader, pkg_name)
 File "/usr/lib/python2.7/runpy.py", line 72, in _run_code
exec code in run_globals
 File "/home/reza/frappe-bench/apps/frappe/frappe/utils/bench_helper.py", line 79, in <module>
main()
 File "/home/reza/frappe-bench/apps/frappe/frappe/utils/bench_helper.py", line 16, in main
click.Group(commands=commands)(prog_name='bench')
 File "/home/reza/frappe-bench/env/local/lib/python2.7/site-packages/click/core.py", line 716, in __call__
  return self.main(*args, **kwargs)
File "/home/reza/frappe-bench/env/local/lib/python2.7/site-packages/click/core.py", line 696, in main
  rv = self.invoke(ctx)
File "/home/reza/frappe-bench/env/local/lib/python2.7/site-packages/click/core.py", line 1060, in invoke
  return _process_result(sub_ctx.command.invoke(sub_ctx))
File "/home/reza/frappe-bench/env/local/lib/python2.7/site-packages/click/core.py", line 1060, in invoke
  return _process_result(sub_ctx.command.invoke(sub_ctx))
File "/home/reza/frappe-bench/env/local/lib/python2.7/site-packages/click/core.py", line 889, in invoke
  return ctx.invoke(self.callback, **ctx.params)
File "/home/reza/frappe-bench/env/local/lib/python2.7/site-packages/click/core.py", line 534, in invoke
  return callback(*args, **kwargs)
File "/home/reza/frappe-bench/env/local/lib/python2.7/site-packages/click/decorators.py", line 17, in new_func
  return f(get_current_context(), *args, **kwargs)
File "/home/reza/frappe-bench/apps/frappe/frappe/commands.py", line 29, in _func
  ret = f(frappe._dict(ctx.obj), *args, **kwargs)
File "/home/reza/frappe-bench/apps/frappe/frappe/commands.py", line 163, in install_app
  _install_app(app, verbose=context.verbose)
File "/home/reza/frappe-bench/apps/frappe/frappe/installer.py", line 93, in install_app
  app_hooks = frappe.get_hooks(app_name=name)
File "/home/reza/frappe-bench/apps/frappe/frappe/__init__.py", line 701, in get_hooks
  hooks = _dict(load_app_hooks(app_name))
File "/home/reza/frappe-bench/apps/frappe/frappe/__init__.py", line 674, in load_app_hooks
  app_hooks = get_module(app + ".hooks")
File "/home/reza/frappe-bench/apps/frappe/frappe/__init__.py", line 590, in get_module
  return importlib.import_module(modulename)
File "/usr/lib/python2.7/importlib/__init__.py", line 37, in import_module
  __import__(name)
**ImportError: No module named container_management.hooks**

What i am understanding is that- i need to register my app in somewhere by creating a module named container_management.hooks. I am stuck here for sometime. Any help would be appreciated. Thanks in advance.

You have to do this step

  1. bench get-app appname git@bitbucket.org:cfiel/appname.git
  2. bench install-app appname
1 Like

@ccfiel Thanks for the suggestion. I have tried this command -

bench get-app appname https://ni8mr2@bitbucket.org/ni8mr2/container-management.git

I have got this log-

Cloning into 'appname'...
Password for 'https://ni8mr2@bitbucket.org': 
remote: Counting objects: 25, done.
remote: Compressing objects: 100% (18/18), done.
remote: Total 25 (delta 1), reused 0 (delta 0)
Unpacking objects: 100% (25/25), done.
Checking connectivity... done.
installing appname
Traceback (most recent call last):
File "/usr/lib/python2.7/runpy.py", line 162, in _run_module_as_main
  "__main__", fname, loader, pkg_name)
File "/usr/lib/python2.7/runpy.py", line 72, in _run_code
exec code in run_globals
File "/home/reza/frappe-bench/apps/frappe/frappe/utils/bench_helper.py", line 79, in <module>
main()
File "/home/reza/frappe-bench/apps/frappe/frappe/utils/bench_helper.py", line 16, in main
click.Group(commands=commands)(prog_name='bench')
File "/home/reza/frappe-bench/env/local/lib/python2.7/site-packages/click/core.py", line 716, in __call__
 return self.main(*args, **kwargs)
File "/home/reza/frappe-bench/env/local/lib/python2.7/site-packages/click/core.py", line 696, in main
  rv = self.invoke(ctx)
File "/home/reza/frappe-bench/env/local/lib/python2.7/site-packages/click/core.py", line 1060, in invoke
  return _process_result(sub_ctx.command.invoke(sub_ctx))
File "/home/reza/frappe-bench/env/local/lib/python2.7/site-packages/click/core.py", line 1060, in invoke
  return _process_result(sub_ctx.command.invoke(sub_ctx))
File "/home/reza/frappe-bench/env/local/lib/python2.7/site-packages/click/core.py", line 889, in invoke
  return ctx.invoke(self.callback, **ctx.params)
File "/home/reza/frappe-bench/env/local/lib/python2.7/site-packages/click/core.py", line 534, in invoke
  return callback(*args, **kwargs)
File "/home/reza/frappe-bench/apps/frappe/frappe/commands.py", line 269, in build
 frappe.init('')
File "/home/reza/frappe-bench/apps/frappe/frappe/__init__.py", line 137, in init
setup_module_map()
File "/home/reza/frappe-bench/apps/frappe/frappe/__init__.py", line 723, in setup_module_map
for module in get_module_list(app):
File "/home/reza/frappe-bench/apps/frappe/frappe/__init__.py", line 632, in get_module_list
  return get_file_items(os.path.join(os.path.dirname(get_module(app_name).__file__), "modules.txt"))
File "/home/reza/frappe-bench/apps/frappe/frappe/__init__.py", line 590, in get_module
  return importlib.import_module(modulename)
File "/usr/lib/python2.7/importlib/__init__.py", line 37, in import_module
  __import__(name)
ImportError: No module named appname
Traceback (most recent call last):smile:
File "/usr/local/bin/bench", line 9, in <module>
  load_entry_point('bench==0.92', 'console_scripts', 'bench')()
File "/home/reza/bench-repo/bench/cli.py", line 60, in cli
  bench()
File "/usr/local/lib/python2.7/dist-packages/click/core.py", line 716, in __call__
return self.main(*args, **kwargs)
File "/usr/local/lib/python2.7/dist-packages/click/core.py", line 696, in main
  rv = self.invoke(ctx)
File "/usr/local/lib/python2.7/dist-packages/click/core.py", line 1060, in invoke
 return _process_result(sub_ctx.command.invoke(sub_ctx))
File "/usr/local/lib/python2.7/dist-packages/click/core.py", line 889, in invoke
 return ctx.invoke(self.callback, **ctx.params)
File "/usr/local/lib/python2.7/dist-packages/click/core.py", line 534, in invoke
 return callback(*args, **kwargs)
File "/home/reza/bench-repo/bench/cli.py", line 175, in get_app
 _get_app(name, git_url, branch=branch)
File "/home/reza/bench-repo/bench/app.py", line 56, in get_app
build_assets(bench=bench)
File "/home/reza/bench-repo/bench/utils.py", line 169, in build_assets
run_frappe_cmd('build', bench=bench)
File "/home/reza/bench-repo/bench/utils.py", line 496, in run_frappe_cmd
raise CommandFailedError(args)
bench.utils.CommandFailedError: ('build',)

It is showing there is no module named appname.

@ccfiel Sorry, i have realized my error. I should have used container_management (my app’s name) instead of appname

1 Like

It has worked. Thanks again.

@ni8mr hope you will open source your app!

@rmehta Sure, i will open source my app. But only after making it a stable one. I am still exploring frappe. :smile: