2
0
mirror of https://github.com/inventree/InvenTree.git synced 2025-07-01 11:10:54 +00:00

Clear data tweak (#9870)

* Tweaks for config path checks

* Update delete-data task
This commit is contained in:
Oliver
2025-06-26 16:29:12 +10:00
committed by GitHub
parent c283beedb3
commit 73e2532058
3 changed files with 19 additions and 4 deletions

View File

@ -13,6 +13,8 @@ ENV INVENTREE_MEDIA_ROOT="${INVENTREE_DATA_DIR}/media"
ENV INVENTREE_BACKUP_DIR="${INVENTREE_DATA_DIR}/backup"
ENV INVENTREE_PLUGIN_DIR="${INVENTREE_DATA_DIR}/plugins"
ENV INVENTREE_CONFIG_FILE="${INVENTREE_DATA_DIR}/config.yaml"
ENV INVENTREE_SECRET_KEY_FILE="${INVENTREE_DATA_DIR}/secret_key.txt"
ENV INVENTREE_OIDC_PRIVATE_KEY_FILE="${INVENTREE_DATA_DIR}/oidc.pem"
# Required for running playwright within devcontainer
ENV DISPLAY=:0

View File

@ -82,9 +82,13 @@ def inventreeInstaller() -> Optional[str]:
if installer:
return str(installer)
elif os.environ.get('INVENTREE_DEVCONTAINER', 'False') == 'True':
if is_true(os.environ.get('INVENTREE_DEVCONTAINER', 'False')):
return 'DEV'
if is_true(os.environ.get('INVENTREE_DOCKER', 'False')):
return 'DOC'
try:
from django.conf import settings
@ -108,6 +112,7 @@ def get_config_dir() -> Path:
return Path('/home/inventree/dev/').resolve()
elif inst == 'PKG':
return Path('/etc/inventree/').resolve()
return get_root_dir().joinpath('config').resolve()

View File

@ -949,7 +949,7 @@ def import_records(
sys.exit(1)
if clear:
delete_data(c, force=True)
delete_data(c, force=True, migrate=True)
info(f"Importing database records from '{target}'")
@ -1018,14 +1018,22 @@ def import_records(
info('Data import completed')
@task
def delete_data(c, force=False):
@task(
help={
'force': 'Force deletion of all data without confirmation',
'migrate': 'Run migrations before deleting data (default = False)',
}
)
def delete_data(c, force: bool = False, migrate: bool = False):
"""Delete all database records!
Warning: This will REALLY delete all records in the database!!
"""
info('Deleting all data from InvenTree database...')
if migrate:
manage(c, 'migrate --run-syncdb')
if force:
manage(c, 'flush --noinput')
else: