Univention Bugzilla – Bug 31378
restrict auto update during app update to new app and ucs sources (without errata or other components)
Last modified: 2020-07-03 20:51:23 CEST
At the moment, if one updates an app, an dist-upgrade is performed including all apt sources (/etc/apt/sources.list, and /etc/apt/sources.list.d/* -> all other components and errata updates). With the apt-get options Dir::Etc::sourcelist and Dir::Etc::sourceparts we could restrict the sources of apt-get to what we want, e.g. i have an ucs 3.1-1 with asterisk4ucs and for this app an update is available, all i need are the ucs sources -> cat /etc/apt/sources.list.d/15_ucs-online-version.list > /tmp/app-update.list and the source for the new asterisk4ucs component -> echo "deb http://appcenter.software-univention.de/univention-repository/3.1/maintained/component/ asterisk4ucs_20130304/all/" >> /tmp/app-update.list -> echo "deb http://appcenter.software-univention.de/univention-repository/3.1/maintained/component/ asterisk4ucs_20130304/amd64/" >> /tmp/app-update.list and now i can upgrade this app using only the new source.list with -> apt-get update -o Dir::Etc::sourcelist="/tmp/app-update.list" \ -o Dir::Etc::sourceparts="-" -o APT::Get::List-Cleanup="0" -> apt-get -s dist-upgrade -o Dir::Etc::sourcelist="/tmp/app-update.list" \ -o Dir::Etc::sourceparts="-" -o APT::Get::List-Cleanup="0" ... Inst asterisk4ucs-udm [0.6.20] (0.6.23 Univention:appc... Inst asterisk4ucs-udm-schema [0.6.20] (0.6.23 Univention:appc... Inst asterisk4ucs-umc-deploy [0.5.6] (0.5.9 Univention:appc... Inst asterisk4ucs-umc-music [0.5.3] (0.5.6 Univention:appc... Inst asterisk4ucs-umc-user ...
The update of an app is done via dist-upgrade in order to update depending components of the app, as well.
(In reply to comment #1) > The update of an app is done via dist-upgrade in order to update depending > components of the app, as well. OK, but if i want to update my asterisk4ucs app, i do NOT want a new linux image from the errata update, at the moment the dist-upgrade also installs all updates from the app, the ucs base, and all other components (especially the errata component) What we need is a dist-upgrade with the new (and old) app apt sources and with the apt sources of the ucs base (15_ucs-online-version.list), or?
This information can be accessed via python-apt: > import apt > c = apt.Cache() > c.open() > c['univention-management-console-frontend'].candidate.uri > 'http://updates.software-univention.de/3.1/maintained/component/3.1-1-errata/all/univention-management-console-frontend_2.0.244-11.635.201306101401_all.deb' > c['univention-management-console-frontend'].candidate.filename > '3.1-1-errata/all/univention-management-console-frontend_2.0.244-11.635.201306101401_all.deb'
(In reply to Felix Botner from comment #2) > (In reply to comment #1) > > The update of an app is done via dist-upgrade in order to update depending > > components of the app, as well. > > OK, but if i want to update my asterisk4ucs app, i do NOT want a new linux > image from the errata update, at the moment the dist-upgrade also installs > all updates from the app, the ucs base, and all other components (especially > the errata component) > > What we need is a dist-upgrade with the new (and old) app apt sources and > with the apt sources of the ucs base (15_ucs-online-version.list), or? Unjoin scripts were added as errata during 3.1-0. So Apps required shell-univention-lib > $SOME_ERRATA_VERSION. I am not so sure if not using the errata component would give us enough flexibility. Plus: When updating an app, there is a hint that this operation will also install all errata updates and that the repositories that should not be included have to be deactivated temporarily
Nice solution! Do we still want this?
This issue has been filed against UCS 4.2. UCS 4.2 is out of maintenance and many UCS components have changed in later releases. Thus, this issue is now being closed. If this issue still occurs in newer UCS versions, please use "Clone this bug" or reopen it and update the UCS version. In this case please provide detailed information on how this issue is affecting you.