# -*- coding: utf-8 -*-
#
# Copyright (C) 2015 Edgewall Software
# All rights reserved.
#
# This software is licensed as described in the file COPYING, which
# you should have received as part of this distribution. The terms
# are also available at http://trac.edgewall.org/wiki/TracLicense.
#
# This software consists of voluntary contributions made by many
# individuals. For the exact contribution history, see the revision
# history and logs, available at http://trac.edgewall.org/log/.

import os


def do_upgrade(env, version, cursor):
    authz_file = env.config.get('authz_policy', 'authz_file')
    if authz_file and not os.path.isabs(authz_file):
        parts = os.path.split(authz_file)
        if len(parts) == 2 and parts[0] == 'conf':
            env.config.set('authz_policy', 'authz_file', parts[1])
            env.config.save()

@@ -496,16 +496,62 @@
 ort os%0A%0A
+from trac.upgrades import backup_config_file%0A%0A
 %0Adef do_
@@ -856,16 +856,65 @@
 rts%5B1%5D)%0A
+            backup_config_file(env, '.db36.bak')%0A
         

Backup the config file during upgrade step. Refs #11529.