r25616: Fedora DS now has a way to install the schema and extra configuration
authorAndrew Bartlett <abartlet@samba.org>
Wed, 10 Oct 2007 21:25:22 +0000 (23:25 +0200)
committerStefan Metzmacher <metze@samba.org>
Fri, 21 Dec 2007 04:42:54 +0000 (05:42 +0100)
as part of the setup inf file.

Andrew Bartlett

source/selftest/env/Samba4.pm
source/setup/fedorads.inf
source/setup/provision-backend

index 944ed83d589d0437e92da13ba0dd0028cc302a79..c5b33bc8975ac1ebb0ba7e9a197f460f9608c8fd 100644 (file)
@@ -192,18 +192,16 @@ sub mk_fedora_ds($$$)
 
        my $pidfile = "$fedora_ds_dir/logs/slapd-samba4.pid";
 
+       system("$self->{bindir}/ad2oLschema $configuration -H $ldapdir/schema-tmp.ldb --option=convert:target=fedora-ds -I $self->{setupdir}/schema-map-fedora-ds-1.0 -O $ldapdir/99_ad.ldif >&2") == 0 or die("schema conversion for Fedora DS failed");
+
 my $dir = getcwd();
 chdir "$ENV{FEDORA_DS_PREFIX}/bin" || die;
-       if (system("perl $ENV{FEDORA_DS_PREFIX}/bin/ds_newinst.pl $fedora_ds_inf >&2") != 0) {
+       if (system("perl $ENV{FEDORA_DS_PREFIX}/sbin/setup-ds.pl --silent --file=$fedora_ds_inf >&2") != 0) {
             chdir $dir;
-            die("perl $ENV{FEDORA_DS_PREFIX}/bin/ds_newinst.pl $fedora_ds_inf FAILED: $?");
+            die("perl $ENV{FEDORA_DS_PREFIX}/sbin/setup-ds.pl --silent --file=$fedora_ds_inf FAILED: $?");
         }
         chdir $dir || die;
 
-       system("cat $fedora_ds_extra_ldif >> $fedora_ds_dir/dse.ldif");
-
-       system("$self->{bindir}/ad2oLschema $configuration -H $ldapdir/schema-tmp.ldb --option=convert:target=fedora-ds -I $self->{setupdir}/schema-map-fedora-ds-1.0 -O $fedora_ds_dir/schema/99_ad.ldif >&2") == 0 or die("schema conversion for Fedora DS failed");
-
        return ($fedora_ds_dir, $pidfile);
 }
 
index 8aed0338fb422286ab73a94ed2e1931b2a170de0..fe51d01db1a0c18e8b78115406a04ef6e0f525d3 100644 (file)
@@ -24,4 +24,6 @@ ldif_dir= ${LDAPDIR}/slapd-samba4/ldif
 cert_dir= ${LDAPDIR}/slapd-samba4
 
 start_server= 0
-install_full_schema= 0
\ No newline at end of file
+install_full_schema= 0
+SchemaFile=${LDAPDIR}/99_ad.ldif
+ConfigFile = ${LDAPDIR}/fedorads-partitions.ldif
index 208869c930c5e417794f8d180bbc6328921dc919..b713595a7e935c63a7590de77f36022abc9ae916 100755 (executable)
@@ -97,11 +97,11 @@ sys.mkdir(subobj.LDAPDIR, 0700);
 provision_schema(subobj, message, tmp_schema_ldb, paths);
 
 var mapping;
-var ext;
+var backend_schema;
 var slapd_command;
 if (options["ldap-backend-type"] == "fedora-ds") {
        mapping = "schema-map-fedora-ds-1.0";
-       ext = "ldif";
+       backend_schema = "backend-schema.ldif";
        if (options["ldap-backend-port"] != undefined) {
                message("Will listen on TCP port " + options["ldap-backend-port"] + "\n");
                subobj.SERVERPORT="ServerPort = " + options["ldap-backend-port"];
@@ -116,7 +116,7 @@ if (options["ldap-backend-type"] == "fedora-ds") {
 } else if (options["ldap-backend-type"] == "openldap") {
        provision_ldapbase(subobj, message, paths);
        mapping = "schema-map-openldap-2.3";
-       ext = "schema";
+       backend_schema = "99_ad.ldif";
        setup_file("slapd.conf", message, subobj.LDAPDIR + "/slapd.conf", subobj);
        setup_file("modules.conf", message, subobj.LDAPDIR + "/modules.conf", subobj);
        sys.mkdir(subobj.LDAPDIR + "/db", 0700);
@@ -142,7 +142,7 @@ if (options["ldap-backend-type"] == "fedora-ds") {
                slapd_command = "slapd -f " + subobj.LDAPDIR + "/slapd.conf -h " + subobj.LDAPI_URI;
        }
 }
-var schema_command = "ad2oLschema --option=convert:target=" + options["ldap-backend-type"] + " -I " + lp.get("setup directory") + "/" + mapping + " -H tdb://" + tmp_schema_ldb + " -O " + subobj.LDAPDIR + "/backend-schema." + ext;
+var schema_command = "ad2oLschema --option=convert:target=" + options["ldap-backend-type"] + " -I " + lp.get("setup directory") + "/" + mapping + " -H tdb://" + tmp_schema_ldb + " -O " + subobj.LDAPDIR + "/" + backend_schema;
 
 message("\nCreate a suitable schema file with:\n%s\n", schema_command);
 message("\nStart slapd with: \n%s\n", slapd_command);