summaryrefslogtreecommitdiffstats
path: root/configure.ac
diff options
context:
space:
mode:
authorRich Megginson <rmeggins@redhat.com>2009-09-09 17:01:49 -0600
committerRich Megginson <rmeggins@redhat.com>2009-09-21 10:28:50 -0600
commitcc89083f1177606d4cbbb52f8cdc5e34d0d16f70 (patch)
tree2cfebaacc69bc8fe416938b4bf9fbb51c73725eb /configure.ac
parent2de80f5fb3398045dc7a25f5d25dfd7dd30c8909 (diff)
downloadds-cc89083f1177606d4cbbb52f8cdc5e34d0d16f70.tar.gz
ds-cc89083f1177606d4cbbb52f8cdc5e34d0d16f70.tar.xz
ds-cc89083f1177606d4cbbb52f8cdc5e34d0d16f70.zip
Add update code - make setup-ds.pl -u do updates
Updates are implemented in: perl - code that plugs in to setup - scriptlets that are imported into the setup perl interpreter and executed in process, giving access to all of the packages and context provided by setup ldif - applied to instances, in the same manner as ConfigFile directives to setup other - any executable file, shell script, etc. can be invoked, with a limited amount of context from the setup process An update directory is added to the package - /usr/share/dirsrv/update - this directory contains the update files - the update filenames begin with two digits and are executed in numeric order (00 first, then 01, etc. up to 99) which should provide enough flexibility In addition, there are 5 stages of update: pre - invoked before any instance specific code preinst, runinst, postinst - invoked for each instance post - invoked after any instance specific code Example files are provided which demonstrate how to get the context. There are two different modes of operation for update: online - must supply a bind dn and password for each instance - servers must be up and running offline - operates directly on the dse.ldif - servers must be shutdown first A new section is added to the .inf file that can be passed in [slapd-instancename] RootDN = binddn RootDNPwd = bindpw The RootDN is optional - if not supplied, it will get the nsslapd-rootdn attribute from the dse.ldif for the instance. I also fixed some problems with error messages. The pam pta plugin entry was giving object class violations, so I added the missing attributes - note that these are replaced by the plugin code when the plugin is loaded - they are only needed during setup. Fixed usage of $_ - $_ behaves like a dynamically scoped variable - which means if you use it in an outer context, you cannot use it in an inner context, even if it is used in a different function. Rather than attempting to figure out how to use $_ safely in lower level functions, I just removed the use of it altogether, which also makes the code easier to read. Reviewed by: nhosoi (Thanks!) - fixed minor issues found Platforms tested: Fedora 11
Diffstat (limited to 'configure.ac')
-rw-r--r--configure.ac7
1 files changed, 6 insertions, 1 deletions
diff --git a/configure.ac b/configure.ac
index b8866435..0e32cd84 100644
--- a/configure.ac
+++ b/configure.ac
@@ -2,7 +2,7 @@
# Process this file with autoconf to produce a configure script.
AC_PREREQ(2.59)
# This version is the version returned by ns-slapd -v
-AC_INIT([dirsrv], [1.2.2], [http://bugzilla.redhat.com/])
+AC_INIT([dirsrv], [1.2.3], [http://bugzilla.redhat.com/])
# AC_CONFIG_HEADER must be called right after AC_INIT.
AC_CONFIG_HEADERS([config.h])
AM_INIT_AUTOMAKE([1.9 foreign subdir-objects])
@@ -205,6 +205,8 @@ if test "$with_fhs_opt" = "yes"; then
sampledatadir=/data
# relative to datadir
scripttemplatedir=/script-templates
+ # relative to datadir
+ updatedir=/updates
# relative to libdir
serverdir=
# relative to libdir
@@ -231,6 +233,8 @@ else
sampledatadir=/$PACKAGE_NAME/data
# relative to datadir
scripttemplatedir=/$PACKAGE_NAME/script-templates
+ # relative to datadir
+ updatedir=/$PACKAGE_NAME/updates
# relative to libdir
serverdir=/$PACKAGE_NAME
# relative to libdir
@@ -272,6 +276,7 @@ AC_SUBST(perldir)
AC_SUBST(infdir)
AC_SUBST(mibdir)
AC_SUBST(mandir)
+AC_SUBST(updatedir)
AC_SUBST(defaultuser)
AC_SUBST(defaultgroup)