Bug 42485 - Deleting "obsolete app files" may actually delete important app file
Deleting "obsolete app files" may actually delete important app file
Status: CLOSED FIXED
Product: UCS
Classification: Unclassified
Component: App Center
UCS 4.1
Other Linux
: P5 normal (vote)
: UCS 4.1-3-errata
Assigned To: Dirk Wiesenthal
Felix Botner
:
Depends on:
Blocks:
  Show dependency treegraph
 
Reported: 2016-09-23 13:38 CEST by Dirk Wiesenthal
Modified: 2016-09-28 14:05 CEST (History)
1 user (show)

See Also:
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:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
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>