Bug 42485

Summary: Deleting "obsolete app files" may actually delete important app file
Product: UCS Reporter: Dirk Wiesenthal <wiesenthal>
Component: App CenterAssignee: Dirk Wiesenthal <wiesenthal>
Status: CLOSED FIXED QA Contact: Felix Botner <botner>
Severity: normal    
Priority: P5 CC: walkenhorst
Version: UCS 4.1   
Target Milestone: UCS 4.1-3-errata   
Hardware: Other   
OS: Linux   
What kind of report is it?: Bug Report What type of bug is this?: 7: Crash: Bug causes crash or data loss
Who will be affected by this bug?: 3: Will affect average number of installed domains How will those affected feel about the bug?: 3: A User would likely not purchase the product
User Pain: 0.360 Enterprise Customer affected?:
School Customer affected?: ISV affected?:
Waiting Support: Flags outvoted (downgraded) after PO Review:
Ticket number: Bug group (optional):
Max CVSS v3 score:

Description Dirk Wiesenthal univentionstaff 2016-09-23 13:38:45 CEST
Holds for etherpad:

The Non-Docker version ships a join script
  /usr/lib/univention-install/50etherpad-lite.inst
_in its package_.

After a univention-app update this file is delete, because the installed app does not ship it as an "external" join script.

The script does not exist in /var/cache/.../etherpad.inst -> The App Center thinks the file shall not exist anywhere -> The file is deleted from /usr/lib/...

For join scripts already executed, this may be an issue barely noticable. But for scripts not yet executed or for schema files (!), this is a big issue - and not really to fix automatically, once the file has been deleted (apt-get install etherpad --reinstall ?).

We should remove this code completely. Or we should only iterate over Docker Apps. Currently, Non-Docker Apps may not ship external join scripts. And even if they can some day, this check is still dangerous.
Comment 1 Dirk Wiesenthal univentionstaff 2016-09-26 02:00:25 CEST
Only removing files from Docker Apps. I still think that the overall idea of removing obsolete files is correct. It is just wrong for Non-Docker Apps.

univention-appcenter 5.0.22-18.224.201609260147
Comment 2 Felix Botner univentionstaff 2016-09-27 17:40:23 CEST
OK - univention-appcenter _update_local_files removes files only for docker apps
OK - yaml
OK - merged to 4.2-0
Comment 3 Janek Walkenhorst univentionstaff 2016-09-28 14:05:54 CEST
<https://errata.software-univention.de/ucs/4.1/279.html>