alter table vvow_einweisungen
Some checks failed
odoo-restore-open_workshop-install / run-odoo-backup-in-docker (push) Failing after 4m37s

This commit is contained in:
gitea 2025-04-12 08:04:30 +00:00
parent 2c84a2b5ff
commit 42faa68903
2 changed files with 14 additions and 6 deletions

View File

@ -166,8 +166,7 @@ jobs:
- name: Modul vvow_einweisungen deinstallieren - name: Modul vvow_einweisungen deinstallieren
run: | run: |
docker exec odoo_uninstall \ docker exec odoo_uninstall \
/opt/odoo/odoo/odoo-bin shell -d ${{ env.DB_NAME }} \ /opt/odoo/odoo/odoo-bin shell -d ${{ env.DB_NAME }} < /home/odoo/custom_addons/open_workshop/scripts/uninstall_vvow_einweisungen.py
< /home/odoo/custom_addons/open_workshop/scripts/uninstall_vvow_einweisungen.py
- name: Stoppe temporären Container - name: Stoppe temporären Container
run: docker stop odoo_uninstall run: docker stop odoo_uninstall

View File

@ -19,16 +19,25 @@ modules_to_uninstall = [
] ]
with api.Environment.manage(): with api.Environment.manage():
registry = Registry("hobbyhimmel") # Wird beim Shell-Aufruf überschrieben registry = Registry("hobbyhimmel") # wird beim odoo-bin shell überschrieben
with registry.cursor() as cr: with registry.cursor() as cr:
env = api.Environment(cr, SUPERUSER_ID, {}) env = api.Environment(cr, SUPERUSER_ID, {})
# 🛠 Versuch, FK-Constraint manuell zu entfernen (vorheriger Fehlerursache)
try:
cr.execute("""
ALTER TABLE res_partner DROP CONSTRAINT IF EXISTS res_partner_vvow_document_id_fkey
""")
print("✅ Foreign Key 'res_partner_vvow_document_id_fkey' erfolgreich (oder schon) entfernt.")
except Exception as e:
print(f"⚠️ Konnte FK nicht entfernen: {e}")
for module_name in modules_to_uninstall: for module_name in modules_to_uninstall:
module = env['ir.module.module'].search([('name', '=', module_name)], limit=1) module = env['ir.module.module'].search([('name', '=', module_name)], limit=1)
if module and module.state == 'installed': if module and module.state == 'installed':
print(f"Uninstalling module: {module_name}") print(f"📦 Deinstalliere Modul: {module_name}")
module.button_immediate_uninstall() module.button_immediate_uninstall()
else: else:
print(f"Module not found or not installed: {module_name}") print(f" Modul nicht gefunden oder nicht installiert: {module_name}")
cr.commit() cr.commit()