$ bench version
education 15.0.0
erpnext 15.16.1
frappe 15.17.0
hrms 15.12.0
non_profit 0.0.1
payments 0.0.1
$ bench --site all install-app non_profit
App erpnext already installed
Installing non_profit...
An error occurred while installing non_profit: ('Module Def', 'Non Profit', IntegrityError(1062, "Duplicate entry 'Non Profit' for key 'PRIMARY'"))
Traceback with variables (most recent call last):
File "apps/frappe/frappe/commands/site.py", line 446, in install_app
_install_app(app, verbose=context.verbose, force=force)
context = {'sites': ['erp.jpsdc.org'], 'force': False, 'verbose': False, 'profile': False}
apps = ('non_profit',)
force = False
_install_app = <function install_app at 0xffff9f2f5630>
filelock = <function filelock at 0xffff9f2f52d0>
exit_code = 0
site = 'erp.jpsdc.org'
app = 'non_profit'
err = DuplicateEntryError('Module Def', 'Non Profit', IntegrityError(1062, "Duplicate entry 'Non Profit' for key 'PRIMARY'"))
File "apps/frappe/frappe/installer.py", line 297, in install_app
add_module_defs(name, ignore_if_duplicate=force)
name = 'non_profit'
verbose = False
set_as_patched = True
force = False
sync_jobs = <function sync_jobs at 0xffff9e256e60>
sync_for = <function sync_for at 0xffff9e257880>
sync_customizations = <function sync_customizations at 0xffff9f3fe950>
sync_fixtures = <function sync_fixtures at 0xffff9e257a30>
app_hooks = {'after_install': ['non_profit.setup.setup_non_profit'], 'app_color': ['grey'], 'app_description': ['Non Profit'], 'app_email': ['[email protected]'], 'app_icon': ['octicon octicon-file-directory'], 'app_license': ['MIT'], 'app_name': ['non_profit'], 'app_publisher': ['Frappe'], 'app_title': ['Non Profit'], 'before_tests': ['non_profit.non_profit.utils.before_tests'], 'doctype_js': {'Sales Invoice': ['public/js/payment_entry.js']}, 'global_search_doctypes': {'Non Profit': [{'doctype': 'Certified Consultant', 'index': 1}, {'doctype': 'Certification Application', 'index': 2}, {'doctype': 'Volunteer', 'index': 3}, {'doctype': 'Membership', 'index': 4}, {'doctype': 'Member', 'index': 5}, {'doctype': 'Donor', 'index': 6}, {'doctype': 'Chapter', 'index': 7}, {'doctype': 'Grant Application', 'index': 8}, {'doctype': 'Volunteer Type', 'index': 9}, {'doctype': 'Donor Type', 'index': 10}, {'doctype': 'Membership Type', 'index': 11}]}, 'override_doctype_class': {'Payment Entry': ['non_profit.n...
installed_apps = ['frappe', 'erpnext', 'hrms', 'education', 'payments']
app = 'erpnext'
required_app = 'erpnext'
File "apps/frappe/frappe/installer.py", line 629, in add_module_defs
d.insert(ignore_permissions=True, ignore_if_duplicate=ignore_if_duplicate)
app = 'non_profit'
ignore_if_duplicate = False
modules = ['Non Profit']
module = 'Non Profit'
d = <ModuleDef: Non Profit>
File "apps/frappe/frappe/model/document.py", line 300, in insert
self.db_insert(ignore_if_duplicate=ignore_if_duplicate)
self = <ModuleDef: Non Profit>
ignore_permissions = True
ignore_links = None
ignore_if_duplicate = False
ignore_mandatory = None
set_name = None
set_child_names = True
File "apps/frappe/frappe/model/base_document.py", line 577, in db_insert
raise frappe.DuplicateEntryError(self.doctype, self.name, e)
self = <ModuleDef: Non Profit>
ignore_if_duplicate = False
conflict_handler = ''
d = {'name': 'Non Profit', 'creation': '2024-03-07 02:01:12.762897', 'modified': '2024-03-07 02:01:12.762897', 'modified_by': 'Administrator', 'owner': 'Administrator', 'docstatus': 0, 'idx': 0, 'module_name': 'Non Profit', 'custom': 0, 'package': None, 'app_name': 'non_profit', 'restrict_to_domain': None, '_user_tags': None, '_comments': None, '_assign': None, '_liked_by': None}
columns = ['name', 'creation', 'modified', 'modified_by', 'owner', 'docstatus', 'idx', 'module_name', 'custom', 'package', 'app_name', 'restrict_to_domain', '_user_tags', '_comments', '_assign', '_liked_by']
frappe.exceptions.DuplicateEntryError: ('Module Def', 'Non Profit', IntegrityError(1062, "Duplicate entry 'Non Profit' for key 'PRIMARY'"))