UPGRADE
author Pascal Volk <user@localhost.localdomain.org>
Mon, 27 Jan 2014 21:27:21 +0000
changeset 702 01db2457bbed
parent 624 e1fc4a3075de
child 707 19184d1265e5
permissions -rw-r--r--
VMM/handler: Improved domaininfo subcommand. Check all labels for ASCII-compatible encoding, not only the first one. If something is in ACE format, convert it to IDNA.

If you still have installed vmm 0.4.x you have to proceed this step first:

    * upgrade your vmm installation to version 0.5.2


If you have installed vmm 0.5.2 you have to proceed this steps:

    * stop Postfix and Dovecot
    * backup/dump your database.
    * backup/dump your database!

    * start psql and connect to the appropriate database
      (ex. psql mailsys vmm -W -h 127.0.0.1)
    * update the database,
      - Dovecot < 1.2.0
	\i vmm-x.y.z/pgsql/update_tables_0.5.x-0.6.pgsql
      - Dovecot >= 1.2.0, 2.0.0 and 2.1.0
	\i vmm-x.y.z/pgsql/update_tables_0.5.x-0.6-dovecot-1.2.x.pgsql
    * Set database permissions.
      (see python set-permissions.py -h for details)
      python vmm-x.y.z/pgsql/set-permissions.py -a -H 127.0.0.1 -U vmm


    /!\ Important note /!\

    All the views (dovecot_* and postfix_*) have been replaced by database
    functions. So you have to adjust all your postfix/pgsql-*.cf files and
    also your /etc/dovecot/dovecot-sql.conf or
    /etc/dovecot/dovecot-sql.conf.ext.
    (See the vmm-x.y.z postfix/pgsql-*.cf files and INSTALL/Configure.Dovecot_2
    files for the new query.)


    * execute upgrade.sh
      This will also upgrade your vmm.cfg and apply the following modifications:

	     old			     new
	------------------------------------------------------------
	domdir.mode		->	domain.directory_mode
	domdir.delete		->	domain.delete_directory
	domdir.base		->	misc.base_directory
	domdir			->	_section domdir deleted_

	maildir.mode		->	account.directory_mode
	maildir.diskusage	->	account.disk_usage
	maildir.delete		->	account.delete_directory
	maildir.folders		->	mailbox.folders
	maildir.name		->	mailbox.root
	maildir			->	_section maildir deleted_

	misc.forcedel		->	domain.force_deletion
	misc.transport		->	domain.transport
	misc.passwdscheme	->	misc.password_scheme
	misc.dovecotvers	->	misc.dovecot_version (12 -> 1.2.11)
	misc.gid_mail		->	/dev/null

	services.smtp		->	domain.smtp
	services.pop3		->	domain.pop3
	services.imap		->	domain.imap
	services.sieve		->	domain.sieve
	services		->	_section services deleted_

	_NEW_.random_password	->	account.random_password
	_NEW_.password_length	->	account.password_length
	_NEW_.auto_postmaster	->	domain.auto_postmaster
	_NEW_.quota_bytes	->	domain.quota_bytes
	_NEW_.quota_messages	->	domain.quota_messages
	_NEW_.module		->	database.module
	_NEW_.port		->	database.port
	_NEW_.sslmode		->	database.sslmode
	_NEW_.format		->	mailbox.format
	_NEW_.crypt_blowfish_rounds ->	misc.crypt_blowfish_rounds
	_NEW_.crypt_sha256_rounds   ->	misc.crypt_sha256_rounds
	_NEW_.crypt_sha512_rounds   ->	misc.crypt_sha512_rounds

	config.done             ->	/dev/null
	config                  ->	_section config deleted_


    * start Dovecot and Postfix again


If you have installed vmm 0.6.0 you have to proceed this steps:

    * Database fixes:
	- Due to an error in usertransport's argument parsing, it is
	  possible that some users' transport-ID points to the erroneous
	  transport 'domain'. To fix that error in your database, execute
	  the following SQL statement:

	   UPDATE users SET tid = NULL
   	    WHERE tid = (SELECT tid FROM transport WHERE transport = 'domain');

	- If you are using Dovecot < v1.2.0:
	  You have to replace the database FUNCTION dovecotpassword().
	  (see file: pgsql/create_tables.pgsql)
	  The service_set.ssid was selected unconditionally. This may cause
	  an empty result, which will make logins impossible.

    * execute upgrade.sh

else
     * read INSTALL