Fix upgrade issues from old (pre-0.5.0) releases of SSSD
Configuration files before 0.5.0 did not enforce provider= in local domains it did special-case by domain name (LOCAL). Our script was relying on provider= value, this patch adds the special-casing in case the domain was called LOCAL.
This commit is contained in:
parent
3c198001f3
commit
04c1b5452b
50
old_upgrades.patch
Normal file
50
old_upgrades.patch
Normal file
@ -0,0 +1,50 @@
|
|||||||
|
>From ff5fd17a20037377889b60a73b2b1f470c67c674 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Jakub Hrozek <jhrozek@redhat.com>
|
||||||
|
Date: Mon, 26 Oct 2009 12:54:38 +0100
|
||||||
|
Subject: [PATCH] Fix migration script for pre-0.5 local domains
|
||||||
|
|
||||||
|
Configuration files before 0.5.0 did not enforce provider= in local
|
||||||
|
domains it did special-case by domain name (LOCAL). Our script was
|
||||||
|
relying on provider= value, this patch adds the special-casing in case
|
||||||
|
the domain was called LOCAL.
|
||||||
|
---
|
||||||
|
server/upgrade/upgrade_config.py | 13 +++++++++++--
|
||||||
|
1 files changed, 11 insertions(+), 2 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/server/upgrade/upgrade_config.py b/server/upgrade/upgrade_config.py
|
||||||
|
index 87e3990..fe20811 100644
|
||||||
|
--- a/server/upgrade/upgrade_config.py
|
||||||
|
+++ b/server/upgrade/upgrade_config.py
|
||||||
|
@@ -25,6 +25,7 @@ import sys
|
||||||
|
import shutil
|
||||||
|
import traceback
|
||||||
|
from ConfigParser import RawConfigParser
|
||||||
|
+from ConfigParser import NoOptionError
|
||||||
|
from optparse import OptionParser
|
||||||
|
|
||||||
|
class SSSDConfigParser(RawConfigParser):
|
||||||
|
@@ -211,11 +212,19 @@ class SSSDConfigFile(object):
|
||||||
|
self._migrate_kw(new_domsec, old_domsec, ldap_kw)
|
||||||
|
self._migrate_kw(new_domsec, old_domsec, krb5_kw)
|
||||||
|
|
||||||
|
+ # configuration files before 0.5.0 did not enforce provider= in local domains
|
||||||
|
+ # it did special-case by domain name (LOCAL)
|
||||||
|
+ try:
|
||||||
|
+ prv = self._new_config.get(new_domsec, 'id_provider')
|
||||||
|
+ except NoOptionError:
|
||||||
|
+ if old_domsec == 'domains/LOCAL':
|
||||||
|
+ prv = 'local'
|
||||||
|
+ self._new_config.set(new_domsec, 'id_provider', prv)
|
||||||
|
+
|
||||||
|
# if domain was local, update with parameters from [user_defaults]
|
||||||
|
- if self._new_config.get(new_domsec, 'id_provider') == 'local':
|
||||||
|
+ if prv == 'local':
|
||||||
|
self._migrate_kw(new_domsec, 'user_defaults', user_defaults_kw)
|
||||||
|
|
||||||
|
-
|
||||||
|
def _migrate_domains(self):
|
||||||
|
for domain in [ s.replace('domains/','') for s in self._config.sections() if s.startswith("domains/") ]:
|
||||||
|
domain = domain.strip()
|
||||||
|
--
|
||||||
|
1.6.2.5
|
||||||
|
|
@ -3,7 +3,7 @@
|
|||||||
|
|
||||||
Name: sssd
|
Name: sssd
|
||||||
Version: 0.7.0
|
Version: 0.7.0
|
||||||
Release: 1%{?dist}
|
Release: 2%{?dist}
|
||||||
Group: Applications/System
|
Group: Applications/System
|
||||||
Summary: System Security Services Daemon
|
Summary: System Security Services Daemon
|
||||||
# The entire source code is GPLv3+ except replace/ which is LGPLv3+
|
# The entire source code is GPLv3+ except replace/ which is LGPLv3+
|
||||||
@ -15,6 +15,8 @@ BuildRoot: %(mktemp -ud %{_tmppath}/%{name}-%{version}-%{release}-XXXXXX)
|
|||||||
|
|
||||||
### Patches ###
|
### Patches ###
|
||||||
|
|
||||||
|
Patch1: 0001-Fix-migration-script-for-pre-0.5-local-domains.patch
|
||||||
|
|
||||||
### Dependencies ###
|
### Dependencies ###
|
||||||
|
|
||||||
Requires: libldb >= 0.9.3
|
Requires: libldb >= 0.9.3
|
||||||
@ -73,6 +75,8 @@ service.
|
|||||||
%prep
|
%prep
|
||||||
%setup -q
|
%setup -q
|
||||||
|
|
||||||
|
%patch1 -p1 -b .upgrade_fixes
|
||||||
|
|
||||||
%build
|
%build
|
||||||
%configure \
|
%configure \
|
||||||
--without-tests \
|
--without-tests \
|
||||||
@ -190,6 +194,9 @@ fi
|
|||||||
%postun client -p /sbin/ldconfig
|
%postun client -p /sbin/ldconfig
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Mon Oct 26 2009 Stephen Gallagher <sgallagh@redhat.com> - 0.7.0-2
|
||||||
|
- Fix upgrade issues from old (pre-0.5.0) releases of SSSD
|
||||||
|
|
||||||
* Fri Oct 23 2009 Stephen Gallagher <sgallagh@redhat.com> - 0.7.0-1
|
* Fri Oct 23 2009 Stephen Gallagher <sgallagh@redhat.com> - 0.7.0-1
|
||||||
- New upstream release 0.7.0
|
- New upstream release 0.7.0
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user