tools.xml revision 4618
e2b4542f0d7a6fc1974a9aa89139e78695fdec55jeff.schenk<?xml version="1.0" encoding="UTF-8" standalone="no"?>
e2b4542f0d7a6fc1974a9aa89139e78695fdec55jeff.schenk ! CDDL HEADER START
e2b4542f0d7a6fc1974a9aa89139e78695fdec55jeff.schenk ! The contents of this file are subject to the terms of the
e2b4542f0d7a6fc1974a9aa89139e78695fdec55jeff.schenk ! Common Development and Distribution License, Version 1.0 only
e2b4542f0d7a6fc1974a9aa89139e78695fdec55jeff.schenk ! (the "License"). You may not use this file except in compliance
e2b4542f0d7a6fc1974a9aa89139e78695fdec55jeff.schenk ! with the License.
e2b4542f0d7a6fc1974a9aa89139e78695fdec55jeff.schenk ! You can obtain a copy of the license at
e2b4542f0d7a6fc1974a9aa89139e78695fdec55jeff.schenk ! trunk/opends/resource/legal-notices/OpenDS.LICENSE
e2b4542f0d7a6fc1974a9aa89139e78695fdec55jeff.schenk ! or https://OpenDS.dev.java.net/OpenDS.LICENSE.
e2b4542f0d7a6fc1974a9aa89139e78695fdec55jeff.schenk ! See the License for the specific language governing permissions
e2b4542f0d7a6fc1974a9aa89139e78695fdec55jeff.schenk ! and limitations under the License.
e2b4542f0d7a6fc1974a9aa89139e78695fdec55jeff.schenk ! When distributing Covered Code, include this CDDL HEADER in each
e2b4542f0d7a6fc1974a9aa89139e78695fdec55jeff.schenk ! file and include the License file at
e2b4542f0d7a6fc1974a9aa89139e78695fdec55jeff.schenk ! trunk/opends/resource/legal-notices/OpenDS.LICENSE. If applicable,
e2b4542f0d7a6fc1974a9aa89139e78695fdec55jeff.schenk ! add the following below this CDDL HEADER, with the fields enclosed
e2b4542f0d7a6fc1974a9aa89139e78695fdec55jeff.schenk ! by brackets "[]" replaced with your own identifying information:
e2b4542f0d7a6fc1974a9aa89139e78695fdec55jeff.schenk ! Portions Copyright [yyyy] [name of copyright owner]
e2b4542f0d7a6fc1974a9aa89139e78695fdec55jeff.schenk ! CDDL HEADER END
e2b4542f0d7a6fc1974a9aa89139e78695fdec55jeff.schenk ! Copyright 2007-2009 Sun Microsystems, Inc.
e2b4542f0d7a6fc1974a9aa89139e78695fdec55jeff.schenk <!-- This function uses make ldif to generate LDIF data files -->
e2b4542f0d7a6fc1974a9aa89139e78695fdec55jeff.schenk This function uses make ldif to generate LDIF data files
e2b4542f0d7a6fc1974a9aa89139e78695fdec55jeff.schenk type="optional"
e2b4542f0d7a6fc1974a9aa89139e78695fdec55jeff.schenk default="STAF_REMOTE_HOSTNAME">
e2b4542f0d7a6fc1974a9aa89139e78695fdec55jeff.schenk Location of target host
e2b4542f0d7a6fc1974a9aa89139e78695fdec55jeff.schenk <function-arg-property name="type" value="hostname"/>
e2b4542f0d7a6fc1974a9aa89139e78695fdec55jeff.schenk type="optional"
e2b4542f0d7a6fc1974a9aa89139e78695fdec55jeff.schenk default="'%s/%s' % (DIRECTORY_INSTANCE_BIN,OPENDSNAME)">
e2b4542f0d7a6fc1974a9aa89139e78695fdec55jeff.schenk Pathname to installation root
e2b4542f0d7a6fc1974a9aa89139e78695fdec55jeff.schenk <function-arg-property name="type" value="filepath"/>
070f41ecef49b6f9ecbce1953c9f0554767919e4jeff.schenk <function-arg-def name="version" type="optional">
070f41ecef49b6f9ecbce1953c9f0554767919e4jeff.schenk Display Directory Server version information
070f41ecef49b6f9ecbce1953c9f0554767919e4jeff.schenk <function-arg-property name="type" value="string"/>
070f41ecef49b6f9ecbce1953c9f0554767919e4jeff.schenk <function-arg-def name="templateFile" type="optional">
bb602bcaa6edbcffd7ca519e04a1c84503c32b43jeff.schenk Path to the template file
cad9afe394afce79886319efffe393ff8b74492ajeff.schenk <function-arg-property name="type" value="filename"/>
cad9afe394afce79886319efffe393ff8b74492ajeff.schenk <function-arg-def name="ldifFile" type="optional">
cad9afe394afce79886319efffe393ff8b74492ajeff.schenk Path to the LDIF file
cad9afe394afce79886319efffe393ff8b74492ajeff.schenk <function-arg-property name="type" value="filename"/>
cad9afe394afce79886319efffe393ff8b74492ajeff.schenk <function-arg-def name="randomSeed" type="optional">
cad9afe394afce79886319efffe393ff8b74492ajeff.schenk The seed to use to initialize the random number generator
cad9afe394afce79886319efffe393ff8b74492ajeff.schenk <function-arg-property name="type" value="integer"/>
cad9afe394afce79886319efffe393ff8b74492ajeff.schenk <function-arg-property name="help" value="option"/>
3548b37cc2745ea64284ccfd29a9725f06dd1d7bjeff.schenk <function-arg-def name="expectedRC" type="optional" default="0">
cad9afe394afce79886319efffe393ff8b74492ajeff.schenk Expected return code value. Default value is 0.
cad9afe394afce79886319efffe393ff8b74492ajeff.schenk Wildcard 'noCheck' to not check the RC
cad9afe394afce79886319efffe393ff8b74492ajeff.schenk <function-arg-def name="knownIssue" type="optional" default="None">
cad9afe394afce79886319efffe393ff8b74492ajeff.schenk Known issue. Corresponds to an issue number.
bb602bcaa6edbcffd7ca519e04a1c84503c32b43jeff.schenk <function-arg-property name="type" value="string" />
cad9afe394afce79886319efffe393ff8b74492ajeff.schenk <!-- Build the Command -->
cad9afe394afce79886319efffe393ff8b74492ajeff.schenk STAFCmdParamsList=[]
cad9afe394afce79886319efffe393ff8b74492ajeff.schenk STAFCmdParams=''
3548b37cc2745ea64284ccfd29a9725f06dd1d7bjeff.schenk dsBinPath='%s/%s' % (dsPath,fileFolder)
cad9afe394afce79886319efffe393ff8b74492ajeff.schenk if templateFile:
cad9afe394afce79886319efffe393ff8b74492ajeff.schenk STAFCmdParamsList.append('-t %s' % templateFile)
bb602bcaa6edbcffd7ca519e04a1c84503c32b43jeff.schenk if ldifFile:
cad9afe394afce79886319efffe393ff8b74492ajeff.schenk STAFCmdParamsList.append('-o %s' % ldifFile)
cad9afe394afce79886319efffe393ff8b74492ajeff.schenk if randomSeed:
cad9afe394afce79886319efffe393ff8b74492ajeff.schenk STAFCmdParamsList.append('-s "%s"' % randomSeed)
cad9afe394afce79886319efffe393ff8b74492ajeff.schenk STAFCmdParams=' '.join(STAFCmdParamsList)
cad9afe394afce79886319efffe393ff8b74492ajeff.schenk { 'name' : 'Make Ldif Script',
bb602bcaa6edbcffd7ca519e04a1c84503c32b43jeff.schenk 'location' : location,
bb602bcaa6edbcffd7ca519e04a1c84503c32b43jeff.schenk 'command' : STAFCmd,
cad9afe394afce79886319efffe393ff8b74492ajeff.schenk 'arguments' : STAFCmdParams,
cad9afe394afce79886319efffe393ff8b74492ajeff.schenk 'expectedRC': expectedRC,
cad9afe394afce79886319efffe393ff8b74492ajeff.schenk 'knownIssue': knownIssue
cad9afe394afce79886319efffe393ff8b74492ajeff.schenk <!-- This function uses make ldif to generate LDIF data files -->
cad9afe394afce79886319efffe393ff8b74492ajeff.schenk This function makes a make-ldif template file
cad9afe394afce79886319efffe393ff8b74492ajeff.schenk <function-arg-def name="numEntries" type="required">
bb602bcaa6edbcffd7ca519e04a1c84503c32b43jeff.schenk Number of entries
cad9afe394afce79886319efffe393ff8b74492ajeff.schenk <function-arg-property name="type" value="string"/>
cad9afe394afce79886319efffe393ff8b74492ajeff.schenk type="optional"
cad9afe394afce79886319efffe393ff8b74492ajeff.schenk default="0">
cad9afe394afce79886319efffe393ff8b74492ajeff.schenk Start entries number
bb602bcaa6edbcffd7ca519e04a1c84503c32b43jeff.schenk <function-arg-property name="type" value="string"/>
00cf90e166a6a688aa3079384024cfaecf538bb0jeff.schenk type="optional"
00cf90e166a6a688aa3079384024cfaecf538bb0jeff.schenk default="DIRECTORY_INSTANCE_SFX">
00cf90e166a6a688aa3079384024cfaecf538bb0jeff.schenk <function-arg-property name="type" value="string"/>
070f41ecef49b6f9ecbce1953c9f0554767919e4jeff.schenk <function-arg-def name="templateFile" type="required">
070f41ecef49b6f9ecbce1953c9f0554767919e4jeff.schenk Template file name
070f41ecef49b6f9ecbce1953c9f0554767919e4jeff.schenk <function-arg-property name="type" value="filename"/>
070f41ecef49b6f9ecbce1953c9f0554767919e4jeff.schenk type="optional"
e2b4542f0d7a6fc1974a9aa89139e78695fdec55jeff.schenk default="STAXServiceMachine">
e2b4542f0d7a6fc1974a9aa89139e78695fdec55jeff.schenk Template file location
e2b4542f0d7a6fc1974a9aa89139e78695fdec55jeff.schenk <function-arg-property name="type" value="filename"/>
e2b4542f0d7a6fc1974a9aa89139e78695fdec55jeff.schenk type="optional"
e2b4542f0d7a6fc1974a9aa89139e78695fdec55jeff.schenk default="False">
e2b4542f0d7a6fc1974a9aa89139e78695fdec55jeff.schenk Add (or not) additional attributes
e2b4542f0d7a6fc1974a9aa89139e78695fdec55jeff.schenk <function-arg-property name="type" value="integer"/>
e2b4542f0d7a6fc1974a9aa89139e78695fdec55jeff.schenk <function-arg-def name="extraLine" type="optional">
e2b4542f0d7a6fc1974a9aa89139e78695fdec55jeff.schenk Extra line to add to the mkae-ldif template
e2b4542f0d7a6fc1974a9aa89139e78695fdec55jeff.schenk <function-arg-property name="type" value="string"/>
e2b4542f0d7a6fc1974a9aa89139e78695fdec55jeff.schenk <!-- Build the import task configuration object -->
e2b4542f0d7a6fc1974a9aa89139e78695fdec55jeff.schenk ldifLines=[]
e2b4542f0d7a6fc1974a9aa89139e78695fdec55jeff.schenk ldifLines.append('define suffix=%s' % suffix)
e2b4542f0d7a6fc1974a9aa89139e78695fdec55jeff.schenk ldifLines.append('define maildomain=example.com')
e2b4542f0d7a6fc1974a9aa89139e78695fdec55jeff.schenk ldifLines.append('define numusers=%s' % numEntries )
a622f6b14edb724c3cdbc8b5836a109d4ac80086Peter Major ldifLines.append('branch: [suffix]')
cad9afe394afce79886319efffe393ff8b74492ajeff.schenk ldifLines.append('branch: ou=People,[suffix]')
cad9afe394afce79886319efffe393ff8b74492ajeff.schenk ldifLines.append('subordinateTemplate: person:[numusers]')
8f54eaf439056db45d07376e058b3a20daa8fd04jeff.schenk ldifLines.append('template: person')
8f54eaf439056db45d07376e058b3a20daa8fd04jeff.schenk ldifLines.append('rdnAttr: uid')
8f54eaf439056db45d07376e058b3a20daa8fd04jeff.schenk ldifLines.append('objectClass: top')
56ed5bbb263838f338eb8afc978091c01a4f2a2bjeff.schenk ldifLines.append('objectClass: person')
56ed5bbb263838f338eb8afc978091c01a4f2a2bjeff.schenk ldifLines.append('objectClass: organizationalPerson')
56ed5bbb263838f338eb8afc978091c01a4f2a2bjeff.schenk ldifLines.append('objectClass: inetOrgPerson')
56ed5bbb263838f338eb8afc978091c01a4f2a2bjeff.schenk ldifLines.append('givenName: <first>')
56ed5bbb263838f338eb8afc978091c01a4f2a2bjeff.schenk ldifLines.append('sn: <last>')
e2b4542f0d7a6fc1974a9aa89139e78695fdec55jeff.schenk ldifLines.append('employeeNumber: <sequential:%s>' % startFrom)
a622f6b14edb724c3cdbc8b5836a109d4ac80086Peter Major ldifLines.append('cn: {givenName} {sn} {employeeNumber}')
e2b4542f0d7a6fc1974a9aa89139e78695fdec55jeff.schenk ldifLines.append('uid: user.{employeeNumber}')
e2b4542f0d7a6fc1974a9aa89139e78695fdec55jeff.schenk ldifLines.append('mail: {uid}@[maildomain]')
e2b4542f0d7a6fc1974a9aa89139e78695fdec55jeff.schenk ldifLines.append('telephoneNumber: <random:telephone>')
cad9afe394afce79886319efffe393ff8b74492ajeff.schenk ldifLines.append('description: This is the description for user.{employeeNumber}.')
cad9afe394afce79886319efffe393ff8b74492ajeff.schenk if additionalAttributes == True:
cad9afe394afce79886319efffe393ff8b74492ajeff.schenk ldifLines.append('initials: {givenName:1}<random:chars:ABCDEFGHIJKLMNOPQRSTUVWXYZ:1>{sn:1}')
cad9afe394afce79886319efffe393ff8b74492ajeff.schenk ldifLines.append('homePhone: <random:telephone>')
cad9afe394afce79886319efffe393ff8b74492ajeff.schenk ldifLines.append('mobile: <random:telephone>')
a622f6b14edb724c3cdbc8b5836a109d4ac80086Peter Major ldifLines.append('street: <random:numeric:5> <file:streets> Street')
cad9afe394afce79886319efffe393ff8b74492ajeff.schenk ldifLines.append('l: <file:cities>')
cad9afe394afce79886319efffe393ff8b74492ajeff.schenk ldifLines.append('st: <file:states>')
cad9afe394afce79886319efffe393ff8b74492ajeff.schenk ldifLines.append('postalCode: <random:numeric:5>')
cad9afe394afce79886319efffe393ff8b74492ajeff.schenk ldifLines.append('postalAddress: {cn}${street}${l}, {st} {postalCode}')
a622f6b14edb724c3cdbc8b5836a109d4ac80086Peter Major ldifLines.append('jpegPhoto:: <random:base64:10000>')
cad9afe394afce79886319efffe393ff8b74492ajeff.schenk if extraLine:
cad9afe394afce79886319efffe393ff8b74492ajeff.schenk ldifLines.append('%s' % extraLine)
cad9afe394afce79886319efffe393ff8b74492ajeff.schenk <!-- Write out the make-ldif template file -->
cad9afe394afce79886319efffe393ff8b74492ajeff.schenk tmpTemplateFile = '%s/tempLdifTemplateFile' % local.temp
cad9afe394afce79886319efffe393ff8b74492ajeff.schenk outfile = open(tmpTemplateFile,"w")
cad9afe394afce79886319efffe393ff8b74492ajeff.schenk for line in ldifLines:
a622f6b14edb724c3cdbc8b5836a109d4ac80086Peter Major outfile.write("%s\n" % line)
cad9afe394afce79886319efffe393ff8b74492ajeff.schenk STAXReason=STAXResult
cad9afe394afce79886319efffe393ff8b74492ajeff.schenk 'creation of a make-ldif template failed (Code=%s,Reason=%s).' % (STAXCode,STAXReason)
a622f6b14edb724c3cdbc8b5836a109d4ac80086Peter Major { 'returncode' : STAXCode ,
cad9afe394afce79886319efffe393ff8b74492ajeff.schenk 'result' : STAXReason }
a622f6b14edb724c3cdbc8b5836a109d4ac80086Peter Major { 'location' : STAXServiceMachine,
cad9afe394afce79886319efffe393ff8b74492ajeff.schenk 'srcfile' : tmpTemplateFile,
cad9afe394afce79886319efffe393ff8b74492ajeff.schenk 'destfile' : templateFile,
cad9afe394afce79886319efffe393ff8b74492ajeff.schenk 'remotehost' : templateLocation }
cad9afe394afce79886319efffe393ff8b74492ajeff.schenk 'returncode' : RC ,
cad9afe394afce79886319efffe393ff8b74492ajeff.schenk 'result' : STAXResult
cad9afe394afce79886319efffe393ff8b74492ajeff.schenk <!-- This function compares two LDIF files using the ldif-diff script -->
cad9afe394afce79886319efffe393ff8b74492ajeff.schenk This function compares two LDIF files and reports the differences in LDIF format
a622f6b14edb724c3cdbc8b5836a109d4ac80086Peter Major type="optional"
cad9afe394afce79886319efffe393ff8b74492ajeff.schenk default="STAF_REMOTE_HOSTNAME">
cad9afe394afce79886319efffe393ff8b74492ajeff.schenk Location of target host
a622f6b14edb724c3cdbc8b5836a109d4ac80086Peter Major <function-arg-property name="type" value="hostname"/>
cad9afe394afce79886319efffe393ff8b74492ajeff.schenk type="optional"
a622f6b14edb724c3cdbc8b5836a109d4ac80086Peter Major default="'%s/%s' % (DIRECTORY_INSTANCE_BIN,OPENDSNAME)">
cad9afe394afce79886319efffe393ff8b74492ajeff.schenk Pathname to installation root
cad9afe394afce79886319efffe393ff8b74492ajeff.schenk <function-arg-property name="type" value="filepath"/>
cad9afe394afce79886319efffe393ff8b74492ajeff.schenk <function-arg-def name="version" type="optional">
cad9afe394afce79886319efffe393ff8b74492ajeff.schenk Display Directory Server version information
cad9afe394afce79886319efffe393ff8b74492ajeff.schenk <function-arg-property name="type" value="string"/>
cad9afe394afce79886319efffe393ff8b74492ajeff.schenk <function-arg-def name="sourceLdif" type="required">
cad9afe394afce79886319efffe393ff8b74492ajeff.schenk LDIF file to use as the source data
cad9afe394afce79886319efffe393ff8b74492ajeff.schenk <function-arg-property name="type" value="filepath"/>
cad9afe394afce79886319efffe393ff8b74492ajeff.schenk <function-arg-def name="targetLdif" type="required">
cad9afe394afce79886319efffe393ff8b74492ajeff.schenk LDIF file to use as the target data
a622f6b14edb724c3cdbc8b5836a109d4ac80086Peter Major <function-arg-property name="type" value="filepath"/>
cad9afe394afce79886319efffe393ff8b74492ajeff.schenk <function-arg-def name="outputLdif" type="required">
a622f6b14edb724c3cdbc8b5836a109d4ac80086Peter Major File to which the diffs should be written
cad9afe394afce79886319efffe393ff8b74492ajeff.schenk <function-arg-property name="type" value="filepath"/>
a622f6b14edb724c3cdbc8b5836a109d4ac80086Peter Major <function-arg-def name="overwriteExisting" type="optional" default="True">
cad9afe394afce79886319efffe393ff8b74492ajeff.schenk Overwrite existing output file rather than append to it
cad9afe394afce79886319efffe393ff8b74492ajeff.schenk <function-arg-property name="type" value="option"/>
cad9afe394afce79886319efffe393ff8b74492ajeff.schenk <function-arg-def name="singleValueChanges" type="optional">
cad9afe394afce79886319efffe393ff8b74492ajeff.schenk Write each attribute-level change as a separate modification
cad9afe394afce79886319efffe393ff8b74492ajeff.schenk per attribute value rather than one modification per entry
cad9afe394afce79886319efffe393ff8b74492ajeff.schenk <function-arg-property name="type" value="option"/>
c49468bbfa37132e6989d263741ca8c3b436f8f4Peter Major <function-arg-property name="help" value="option"/>
cad9afe394afce79886319efffe393ff8b74492ajeff.schenk <!-- Build the Command -->
a622f6b14edb724c3cdbc8b5836a109d4ac80086Peter Major STAFCmdParamsList=[]
cad9afe394afce79886319efffe393ff8b74492ajeff.schenk STAFCmdParams=''
cad9afe394afce79886319efffe393ff8b74492ajeff.schenk dsBinPath='%s/%s' % (dsPath,fileFolder)
a622f6b14edb724c3cdbc8b5836a109d4ac80086Peter Major if sourceLdif:
cad9afe394afce79886319efffe393ff8b74492ajeff.schenk STAFCmdParamsList.append('-s %s' % sourceLdif)
cad9afe394afce79886319efffe393ff8b74492ajeff.schenk if targetLdif:
cad9afe394afce79886319efffe393ff8b74492ajeff.schenk STAFCmdParamsList.append('-t %s' % targetLdif)
cad9afe394afce79886319efffe393ff8b74492ajeff.schenk if outputLdif:
cad9afe394afce79886319efffe393ff8b74492ajeff.schenk STAFCmdParamsList.append('-o %s' % outputLdif)
cad9afe394afce79886319efffe393ff8b74492ajeff.schenk if overwriteExisting:
cea5d6ff1297ba992d04619512ca32c18bf70e3dPeter Major if singleValueChanges:
if diffsFileContent.startswith("# No differences were detected between the source and target LDIF files") :
STAFCmdParamsList.append('-V')
STAFCmdParamsList.append('-s %s' % sourceLdif)
STAFCmdParamsList.append('-t %s' % targetLdif)
STAFCmdParamsList.append('-m %s' % changesLdif)
STAFCmdParamsList.append('-H')
referenceServerPath = '%s/%s' % (referenceServer.getDir(), OPENDSNAME)
referenceTree = 'referenceTree.ldif'
sampleTree = 'sampleTree.ldif'
treeDiffs = 'treeDiffs.ldif'
'dsInstanceHost' : referenceServer.getHostname(),
'dsInstanceAdminPort' : referenceServer.getAdminPort(),
'dsInstanceDn' : referenceServer.getRootDn(),
'dsInstancePswd' : referenceServer.getRootPwd(),
filePath = '%s/%s' % (server.getDir(), OPENDSNAME)
'dsInstanceHost' : server.getHostname(),
'dsInstanceAdminPort' : server.getAdminPort(),
'dsInstanceDn' : server.getRootDn(),
'dsInstancePswd' : server.getRootPwd(),
{ 'location' : server.getHostname(),
failedServers.append('%s:%s' % \
failedServers.append('%s:%s' % \
% comma.join(failedServers)
referenceServerPath = '%s/%s' % (referenceServer.getDir(), OPENDSNAME)
schemaDiffs = 'schemaDiffs.ldif'
{ 'location' : referenceServer.getHostname(),
'remotehost' : server.getHostname(),
serverPath = '%s/%s' % (server.getDir(), OPENDSNAME)
'outputLdif' : '%s/%s' % (server.getDir(), schemaDiffs)
failingServerList = 'List of non-synchronized servers (schema verify FAILED): %s ' % comma.join(failedServers)
'Delete suffix %s on server running on host %s on port %s' % (treeSuffix, server.getHostname(), server.getPort())
{ 'location' : server.getHostname(),
'dsPath' : '%s/%s' % (server.getDir(),OPENDSNAME),
'dsInstanceHost' : server.getHostname(),
'dsInstancePort' : server.getPort(),
'dsInstanceDn' : server.getRootDn(),
'dsInstancePswd' : server.getRootPwd(),
{ 'location' : server.getHostname(),
'dsPath' : '%s/%s' % (server.getDir(),OPENDSNAME)
{ 'location' : server.getHostname(),
'dsPath' : '%s/%s' % (server.getDir(),OPENDSNAME),
'dsInstanceHost' : server.getHostname(),
'dsInstancePort' : server.getPort(),
'dsInstanceDn' : server.getRootDn(),
'dsInstancePswd' : server.getRootPwd(),
{ 'location' : server.getHostname(),
'dsHost' : server.getHostname(),
'dsPath' : '%s/%s' % (server.getDir(),OPENDSNAME),
'dsAdminPort' : server.getAdminPort(),
'dsBindDN' : server.getRootDn(),
'dsBindPwd' : server.getRootPwd()
STAFCmdParamsList.append('-b "%s"' % dsBaseDN)
STAFCmdParamsList.append('-f %s' % dsFilterFile)
STAFCmdParamsList.append('-l %s' % dsLdifFile)
STAFCmdParamsList.append('-o %s' % dsOutputFile)
STAFCmdParamsList.append('-O')
STAFCmdParamsList.append('-s %s' % dsSearchScope)
STAFCmdParamsList.append('-t %s' % dsTimeLimit)
STAFCmdParamsList.append('-z %s' % dsSizeLimit)
STAFCmdParamsList.append('-T')
STAFCmdParamsList.append('-H')
STAFCmdParamsList.append('-V')
STAFCmdParamsList.append('"%s"' % dsFilter)
STAFCmdParamsList.append('%s' % dsAttributes)
STAFCmdParamsList.append('-a')
STAFCmdParamsList.append('-c %s' % clearPwd)
STAFCmdParamsList.append('-e %s' % encodedPwd)
STAFCmdParamsList.append('-E %s' % encodedPwdFile)
STAFCmdParamsList.append('-f %s' % clearPwdFile)
STAFCmdParamsList.append('-l')
STAFCmdParamsList.append('-r')
STAFCmdParamsList.append('-s %s' % storageScheme)
STAFCmdParamsList.append('-H')
STAFCmdParamsList.append('-V')
STAFCmdParamsList.append('-V')
STAFCmdParamsList.append('-s %s' % sourceLdif)
STAFCmdParamsList.append('-t %s' % targetLdif)
STAFCmdParamsList.append('-o %s' % outputLdif)
STAFCmdParamsList.append('-O')
STAFCmdParamsList.append('-S')
STAFCmdParamsList.append('-H')
STAFCmdParamsList.append('-V')
STAFCmdParamsList.append('-Q')
STAFCmdParamsList.append('-H')
STAFCmdParamsList.append(subcommand)
STAFCmdParamsList.append('-b "%s"' % targetDn)
STAFCmdParamsList.append('-h %s' % dsInstanceHost)
STAFCmdParamsList.append('-D "%s"' % dsInstanceDn)
STAFCmdParamsList.append('-w %s' % dsInstancePswd)
STAFCmdParamsList.append('-H')
STAFCmdParamsList.append('-j %s' % dsBindPasswordFile)
STAFCmdParamsList.append('-K %s' % dsKeyStorePath)
STAFCmdParamsList.append('-N %s' % dsCertNickname)
STAFCmdParamsList.append('-o %s' % dsSaslOption)
STAFCmdParamsList.append('-p %s' % dsInstanceAdminPort)
STAFCmdParamsList.append('-X')
STAFCmdParamsList.append('-P %s' % dsTrustStorePath)
STAFCmdParamsList.append('-q')
STAFCmdParamsList.append('--trustStorePassword %s' % dsTrustStorePassword)
STAFCmdParamsList.append('-U %s' % dsTrustStorePasswordFile)
STAFCmdParamsList.append('-u %s' % dsKeyStorePasswordFile)
STAFCmdParamsList.append('-V')
STAFCmdParamsList.append('-W %s' % dsKeyStorePassword)
STAFCmdParamsList.append('-Z')
STAFCmdParamsList.append('-O %s' % dsOperationValue)
serverHost = server.getHostname()
serverPath = '%s/%s' % (server.getDir(), OPENDSNAME)
listAttr.append('objectclass:top')
listAttr.append('objectclass:organizationalperson')
listAttr.append('objectclass:inetorgperson')
listAttr.append('objectclass:person')
listAttr.append('givenname:Test-%s' % i)
listAttr.append('sn:Entry-%s' % i)
listAttr.append('cn:Test Entry - %s' % i)
(entryDn, serverHost, server.getPort())
'dsInstancePort' : server.getPort(),
'dsInstanceDn' : server.getRootDn(),
'dsInstancePswd' : server.getRootPwd(),
{ 'location' : otherServer.getHostname(),
% (otherServer.getDir(), OPENDSNAME),
'dsInstanceHost' : otherServer.getHostname(),
'dsInstancePort' : otherServer.getPort(),
'dsInstanceDn' : otherServer.getRootDn(),
'dsInstancePswd' : otherServer.getRootPwd(),
failedServers.append('%s:%s' % \
for entry %s): %s ' % (entryDn, comma.join(failedServers))