Unable to Upgrade to 4.0 - Cyrus 2.2 not installed

Hello,
This system is complainning that Cyrus 2.2 is no longer supported.

=====================
[size=85]Starting update to UCS version 4.0-0

HINT:
Please check the release notes carefully BEFORE updating to UCS 4.0-0:
English version: docs.univention.de/release-notes-4.0-0-en.html
German version: docs.univention.de/release-notes-4.0-0-de.html

Please also consider documents of following release updates and
3rd party components.

Do you want to continue [Y/n]? Y

WARNING: Cyrus-2.2 is no longer supported by UCS-4 and must be migrated to a
newer version of Cyrus-IMAPd. See sdb.univention.de/1213 for
more details.
Error: Please check “/var/log/univention/updater.log” for details.
ERROR: update failed. Please check /var/log/univention/updater.log[/size]

             Reality is that we have Cyrus 2.4  installed.   

================
root@mail:/var/log# dpkg --get-selections | grep cyrus
cyrus-admin-2.4 install
cyrus-common install
cyrus-common-2.4 install
cyrus-imapd-2.4 install
cyrus-pop3d-2.4 install
libcyrus-imap-perl24 install
libpam-univentionmailcyrus install
univention-mail-cyrus install
univention-mail-cyrus-ox install

===================

Rolando Riley

Hi,

did you check /var/log/univention/updater.log for additional details?
[bug]36372[/bug] has some informations about the check, you might want to have a look at comment #3.

Best Regards,
Dirk Ahrnke

Hello Dirk;

Here is the output on my system for comment 3 on that thread.

====
root@mail:/var/log/univention# ln -s . /etc/imapd
ln: creating symbolic link `/etc/imapd/.’: File exists

===

updater.log  has the exact information that the systems  drops on console while doing the upgrade.   Any more ideas?  .   I also tried  univention-install --reinstall cyrus-common-2.4

without any luck.

================
root@mail:/var/log/univention# tail -100 updater.log

Starting update to UCS version 4.0-0 at Fri Sep 25 10:33:47 2015…
Starting update to UCS version 4.0-0
25.09.15 10:33:48.746 DEBUG_INIT
**** Starting univention-updater with parameter=[’/usr/share/univention-updater/univention-updater’, ‘net’, ‘–updateto’, ‘4.0-0’, ‘–silent’, ‘–ignoressh’, ‘–ignoreterm’]
Version=3.2
Patchlevel=7
starting net mode
—>DBG:update_available(mode=net, cdrom_mount_point=/cdrom, iso=None)
Checking network repository
Update to = 4.0-0
**** Downloading scripts at Fri Sep 25 10:34:40 2015
**** Starting actual update at Fri Sep 25 10:35:35 2015
Running preup.sh script
Fri Sep 25 10:35:35 EST 2015

HINT:
Please check the release notes carefully BEFORE updating to UCS 4.0-0:
English version: docs.univention.de/release-notes-4.0-0-en.html
German version: docs.univention.de/release-notes-4.0-0-de.html

Please also consider documents of following release updates and
3rd party components.

Do you want to continue [Y/n]?
Custom preupdate script /var/lib/local-preup.sh not found
WARNING: Cyrus-2.2 is no longer supported by UCS-4 and must be migrated to a
newer version of Cyrus-IMAPd. See sdb.univention.de/1213 for
more details.
Error: Update aborted by pre-update script of release 4.0-0
exitcode of univention-updater: 1
ERROR: update failed. Please check /var/log/univention/updater.log

Rolando Riley

Hi,
this is what preup.sh is doing:

check_for_cyrus22 () { case "$(dpkg-query -W -f '${Status}' cyrus-common-2.2 2>/dev/null)" in install*) ;; *) return 0 ;; esac echo "WARNING: Cyrus-2.2 is no longer supported by UCS-4 and must be migrated to a" echo " newer version of Cyrus-IMAPd. See http://sdb.univention.de/1213 for" echo " more details." if is_ucr_true update40/ignore_cyrus22; then echo "WARNING: update40/ignore_cyrus22 is set to true. Skipped as requested." else exit 1 fi }

hth,
Dirk

Hi Dirk,
It is evident for me this is a bug. I am not able to find cyrus-common-2.2 anywher on this system. Not even with this command

=====
root@mail:/usr/share/univention-updater# dpkg-query -W | grep cyrus
cyrus-admin-2.4 2.4.9-1.27.201308091604
cyrus-common 2.4.9-1.27.201308091604
cyrus-common-2.4 2.4.9-1.27.201308091604
cyrus-imapd-2.4 2.4.9-1.27.201308091604
cyrus-pop3d-2.4 2.4.9-1.27.201308091604
libcyrus-imap-perl24 2.4.9-1.27.201308091604
libpam-univentionmailcyrus 5.0.1-1.34.201307100846
univention-mail-cyrus 6.0.6-1.194.201403170855
univention-mail-cyrus-ox 5.0.0-2.66.201408251448

  Is there a way  to circumvent this problem?    

Rolando

Hi,

at first a note regarding the preup.sh: this script is directly fetched from the configured repository. In most cases updates.software-univention.de/4 … l/preup.sh is used. This is the file where I searched for the function yesterday.

From your dpkg-query line I can not see any hints too, but the script is using the “-f” switch to determine the status.
example from a 4.0 installation, enhanced for easier reading:

root@m:~# dpkg-query -W -f '${Status}' cyrus-common-2.2; echo
unknown ok not-installed
root@m:~# dpkg-query -W -f '${Status}' cyrus-common-2.4; echo
install ok installed

There might be some environmental influence which leads the script to assume that the cyrus-common-2.2 is installed.

In case you are sure that this is not the case (and no other inconsistencies in the package-status are appearing) you could set the mentioned UCRV “update40/ignore_cyrus22” to “true” and skip this check.

Best Regards,
Dirk

Hi Dirk,
Didn’t saw your post. To circumvent and resolve the problem I did
1) univention-remove cyrus-common

     That removed  cyrus-common-2.4  and all  the packages related to it.    The system then automtically reinstalled  cyrus-common-2.2.
               2)  I followed the procedure  described on See [sdb.univention.de/1213](http://sdb.univention.de/1213) 

               3)  Did an upgrade then  to  cyrus-common-2.4   and  univention-upgrade    the passthrough.      SOLVED.


       Upgrade process is  went all good  through  4.0  and  it is stalled on 4.01  on an error  I will post in another thread.

thanks,

Rolando Riley

Mastodon