52 lines
1.6 KiB
Bash
Executable File
52 lines
1.6 KiB
Bash
Executable File
#!/bin/bash
|
|
|
|
DB_NAME="$1"
|
|
ODOO_SERVICE="$2"
|
|
|
|
FINALE_SQL=$(cat <<'EOF'
|
|
/*Delete sequences that prevent Odoo to start*/
|
|
drop sequence base_registry_signaling;
|
|
drop sequence base_cache_signaling;
|
|
EOF
|
|
)
|
|
query_postgres_container "$FINALE_SQL" "$DB_NAME" || exit 1
|
|
|
|
# Fix duplicated views
|
|
PYTHON_SCRIPT=post_migration_fix_duplicated_views.py
|
|
echo "Remove duplicated views with script $PYTHON_SCRIPT ..."
|
|
exec_python_script_in_odoo_shell "$DB_NAME" "$DB_NAME" "$PYTHON_SCRIPT" || exit 1
|
|
|
|
# Reset all website templates with custom content
|
|
FINALE_SQL_2=$(cat <<'EOF'
|
|
UPDATE ir_ui_view
|
|
SET arch_db = NULL
|
|
WHERE arch_fs IS NOT NULL
|
|
AND arch_fs LIKE 'website/%'
|
|
AND arch_db IS NOT NULL
|
|
AND id NOT IN (SELECT view_id FROM website_page);
|
|
EOF
|
|
)
|
|
query_postgres_container "$FINALE_SQL_2" "$DB_NAME" || exit 1
|
|
|
|
# Purge QWeb cache from compiled assets
|
|
FINALE_SQL_3=$(cat <<'EOF'
|
|
DELETE FROM ir_attachment
|
|
WHERE name LIKE '/web/assets/%'
|
|
OR name LIKE '%.assets_%'
|
|
OR (res_model = 'ir.ui.view' AND mimetype = 'text/css');
|
|
EOF
|
|
)
|
|
query_postgres_container "$FINALE_SQL_3" "$DB_NAME" || exit 1
|
|
|
|
# Uninstall obsolette add-ons
|
|
PYTHON_SCRIPT=post_migration_cleanup_obsolete_modules.py
|
|
echo "Uninstall obsolete add-ons with script $PYTHON_SCRIPT ..."
|
|
exec_python_script_in_odoo_shell "$DB_NAME" "$DB_NAME" "$PYTHON_SCRIPT" || exit 1
|
|
|
|
# Give back the right to user to access to the tables
|
|
# docker exec -u 70 "$DB_CONTAINER_NAME" pgm chown "$FINALE_SERVICE_NAME" "$DB_NAME"
|
|
|
|
|
|
# Launch Odoo with database in finale version to run all updates
|
|
compose --debug run "$ODOO_SERVICE" -u all --log-level=debug --stop-after-init --no-http
|