mirror of
https://github.com/samba-team/samba.git
synced 2025-01-11 05:18:09 +03:00
r25616: Fedora DS now has a way to install the schema and extra configuration
as part of the setup inf file.
Andrew Bartlett
(This used to be commit 6c8987464e
)
This commit is contained in:
parent
286157f4aa
commit
5c4a4b4566
10
source4/selftest/env/Samba4.pm
vendored
10
source4/selftest/env/Samba4.pm
vendored
@ -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);
|
||||
}
|
||||
|
||||
|
@ -24,4 +24,6 @@ ldif_dir= ${LDAPDIR}/slapd-samba4/ldif
|
||||
cert_dir= ${LDAPDIR}/slapd-samba4
|
||||
|
||||
start_server= 0
|
||||
install_full_schema= 0
|
||||
install_full_schema= 0
|
||||
SchemaFile=${LDAPDIR}/99_ad.ldif
|
||||
ConfigFile = ${LDAPDIR}/fedorads-partitions.ldif
|
||||
|
@ -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);
|
||||
|
Loading…
Reference in New Issue
Block a user