TSK-1689: Updated wildfly example to execute tests (#1796)
This commit is contained in:
parent
026ee69cef
commit
2b2fdc3dd9
|
@ -23,7 +23,7 @@ set -e #fail fast
|
|||
# Arguments:
|
||||
# $1: exit code
|
||||
function helpAndExit() {
|
||||
cat "$0" | grep "^#H" | cut -c4- | sed -e "s/%FILE%/$(basename "$0")/g"
|
||||
grep "^#H" "$0" | cut -c4- | sed -e "s/%FILE%/$(basename "$0")/g"
|
||||
exit "$1"
|
||||
}
|
||||
|
||||
|
@ -38,7 +38,7 @@ function increment_version() {
|
|||
echo "'$1' does not match tag pattern." >&2
|
||||
exit 1
|
||||
fi
|
||||
echo "${1%\.*}.$(expr ${1##*\.*\.} + 1)"
|
||||
echo "${1%\.*}.$(("${1##*\.*\.}" + 1))"
|
||||
}
|
||||
|
||||
# changing version in pom and all its children
|
||||
|
@ -48,7 +48,7 @@ function increment_version() {
|
|||
# Environment variable:
|
||||
# REL: relative path to this file
|
||||
function change_version() {
|
||||
$REL/../mvnw -q versions:set -f "$1" -DnewVersion="$2" -DartifactId=* -DgroupId=* versions:commit
|
||||
"$REL/../mvnw" -q versions:set -f "$1" -DnewVersion="$2" -DartifactId=* -DgroupId=* versions:commit
|
||||
}
|
||||
|
||||
function main() {
|
||||
|
@ -65,7 +65,7 @@ function main() {
|
|||
echo "missing parameter for argument '-m|--modules'" >&2
|
||||
exit 1
|
||||
fi
|
||||
MODULES=($2)
|
||||
MODULES=("$2")
|
||||
shift # passed argument
|
||||
shift # passed value
|
||||
;;
|
||||
|
@ -82,8 +82,8 @@ function main() {
|
|||
fi
|
||||
|
||||
if [[ "$GITHUB_REF" =~ ^refs/tags/v[0-9]+\.[0-9]+\.[0-9]+$ ]]; then
|
||||
version=$([[ -n "$INCREMENT" ]] && echo $(increment_version "${GITHUB_REF##refs/tags/v}")-SNAPSHOT || echo "${GITHUB_REF##refs/tags/v}")
|
||||
for dir in ${MODULES[@]}; do
|
||||
version=$([[ -n "$INCREMENT" ]] && echo "$(increment_version "${GITHUB_REF##refs/tags/v}")-SNAPSHOT" || echo "${GITHUB_REF##refs/tags/v}")
|
||||
for dir in "${MODULES[@]}"; do
|
||||
change_version "$dir" "$version"
|
||||
done
|
||||
else
|
||||
|
|
|
@ -18,7 +18,7 @@ set -e # fail fast
|
|||
# Arguments:
|
||||
# $1: exit code
|
||||
function helpAndExit() {
|
||||
cat "$0" | grep "^#H" | cut -c4- | sed -e "s/%FILE%/$(basename "$0")/g"
|
||||
grep "^#H" "$0" | cut -c4- | sed -e "s/%FILE%/$(basename "$0")/g"
|
||||
exit "$1"
|
||||
}
|
||||
|
||||
|
@ -33,7 +33,7 @@ function increment_version() {
|
|||
echo "'$1' does not match tag pattern." >&2
|
||||
exit 1
|
||||
fi
|
||||
echo "${1%\.*}.$(expr ${1##*\.*\.} + 1)"
|
||||
echo "${1%\.*}.$(("${1##*\.*\.}" + 1))"
|
||||
}
|
||||
|
||||
function main() {
|
||||
|
@ -65,7 +65,7 @@ function main() {
|
|||
for file in "$@"; do
|
||||
[[ -n "$file" ]] && git add "$file"
|
||||
done
|
||||
git commit -m "Updated poms to version $(increment_version ${GITHUB_REF##refs/tags/v})-SNAPSHOT"
|
||||
git commit -m "Updated poms to version $(increment_version "${GITHUB_REF##refs/tags/v}")-SNAPSHOT"
|
||||
git push
|
||||
else
|
||||
echo "Nothing to push - this is not a release!"
|
||||
|
|
|
@ -14,7 +14,7 @@ set -e #fail fast
|
|||
# Arguments:
|
||||
# $1: exit code
|
||||
function helpAndExit() {
|
||||
cat "$0" | grep "^#H" | cut -c4- | sed -e "s/%FILE%/$(basename "$0")/g"
|
||||
grep "^#H" "$0" | cut -c4- | sed -e "s/%FILE%/$(basename "$0")/g"
|
||||
exit "$1"
|
||||
}
|
||||
|
||||
|
@ -29,7 +29,7 @@ function increment_version() {
|
|||
echo "'$1' does not match tag pattern." >&2
|
||||
exit 1
|
||||
fi
|
||||
echo "${1%\.*}.$(expr ${1##*\.*\.} + 1)"
|
||||
echo "${1%\.*}.$(("${1##*\.*\.}" + 1))"
|
||||
}
|
||||
|
||||
function main() {
|
||||
|
@ -37,14 +37,15 @@ function main() {
|
|||
if [[ "$GITHUB_REF" =~ ^refs/tags/v[0-9]+\.[0-9]+\.[0-9]+$ ]]; then
|
||||
REL=$(dirname "$0")
|
||||
FILES=(
|
||||
$REL/../rest/taskana-rest-spring-example-wildfly/pom.xml
|
||||
"$REL/../rest/taskana-rest-spring-example-wildfly/pom.xml"
|
||||
"$REL/../rest/taskana-rest-spring-example-wildfly/src/test/java/pro/taskana/example/wildfly/AbstractAccTest.java"
|
||||
)
|
||||
for file in ${FILES[@]}; do
|
||||
sed -i "s/[0-9]\+\.[0-9]\+\.[0-9]\+-SNAPSHOT/$(increment_version "${GITHUB_REF##refs/tags/v}")-SNAPSHOT/g" $file
|
||||
for file in "${FILES[@]}"; do
|
||||
sed -i "s/[0-9]\+\.[0-9]\+\.[0-9]\+-SNAPSHOT/$(increment_version "${GITHUB_REF##refs/tags/v}")-SNAPSHOT/g" "$file"
|
||||
done
|
||||
else
|
||||
echo "skipped version change for wildfly because this is not a release build"
|
||||
fi
|
||||
}
|
||||
|
||||
main "$@"
|
||||
main "$@"
|
||||
|
|
|
@ -3,12 +3,12 @@ set -e # fail fast
|
|||
set -x
|
||||
BASE_URL=https://taskana.mybluemix.net/taskana
|
||||
|
||||
test 200 -eq $(curl -sw %{http_code} -o /dev/null "$BASE_URL/docs/rest/rest-api.html")
|
||||
test 200 -eq $(curl -sw %{http_code} -o /dev/null "$BASE_URL/docs/rest/simplehistory-rest-api.html")
|
||||
test 200 -eq $(curl -sw %{http_code} -o /dev/null "$BASE_URL/docs/rest/routing-rest-api.html")
|
||||
test 200 -eq "$(curl -sw "%{http_code}" -o /dev/null "$BASE_URL/docs/rest/rest-api.html")"
|
||||
test 200 -eq "$(curl -sw "%{http_code}" -o /dev/null "$BASE_URL/docs/rest/simplehistory-rest-api.html")"
|
||||
test 200 -eq "$(curl -sw "%{http_code}" -o /dev/null "$BASE_URL/docs/rest/routing-rest-api.html")"
|
||||
for module in taskana-core taskana-spring; do
|
||||
test 200 -eq $(curl -sw %{http_code} -o /dev/null "$BASE_URL/docs/java/$module/pro/taskana/package-summary.html")
|
||||
test 200 -eq "$(curl -sw "%{http_code}" -o /dev/null "$BASE_URL/docs/java/$module/pro/taskana/package-summary.html")"
|
||||
done
|
||||
for module in taskana-cdi; do
|
||||
test 200 -eq $(curl -sw %{http_code} -o /dev/null "$BASE_URL/docs/java/$module/pro/taskana/common/internal/package-summary.html")
|
||||
test 200 -eq "$(curl -sw "%{http_code}" -o /dev/null "$BASE_URL/docs/java/$module/pro/taskana/common/internal/package-summary.html")"
|
||||
done
|
||||
|
|
|
@ -4,7 +4,7 @@ set -e #fail fast
|
|||
#check that first dir has same amount of files as second dir
|
||||
function verifyDocs() {
|
||||
test -d "$1"
|
||||
test $(find "$1" | wc -l) -eq $(grep "$2" <<<"$JAR_CONTENT" | wc -l)
|
||||
test "$(find "$1" | wc -l)" -eq "$(grep -c "$2" <<<"$JAR_CONTENT")"
|
||||
}
|
||||
|
||||
REL=$(dirname "$0")
|
||||
|
@ -18,8 +18,8 @@ set -x
|
|||
verifyDocs "$REL/../lib/taskana-core/target/apidocs" "/static/docs/java/taskana-core"
|
||||
verifyDocs "$REL/../lib/taskana-cdi/target/apidocs" "/static/docs/java/taskana-cdi"
|
||||
verifyDocs "$REL/../lib/taskana-spring/target/apidocs" "/static/docs/java/taskana-spring"
|
||||
test -n "$(jar -tf $JAR_FILE_LOCATION | grep /static/docs/rest/rest-api.html)"
|
||||
test -n "$(jar -tf $JAR_FILE_LOCATION | grep /static/docs/rest/simplehistory-rest-api.html)"
|
||||
test -n "$(jar -tf $JAR_FILE_LOCATION | grep /static/docs/rest/routing-rest-api.html)"
|
||||
test -n "$(jar -tf "$JAR_FILE_LOCATION" | grep /static/docs/rest/rest-api.html)"
|
||||
test -n "$(jar -tf "$JAR_FILE_LOCATION" | grep /static/docs/rest/simplehistory-rest-api.html)"
|
||||
test -n "$(jar -tf "$JAR_FILE_LOCATION" | grep /static/docs/rest/routing-rest-api.html)"
|
||||
set +x
|
||||
echo "the jar file '$JAR_FILE_LOCATION' contains documentation"
|
||||
|
|
2
pom.xml
2
pom.xml
|
@ -78,7 +78,7 @@
|
|||
<version.resteasy>5.0.1.Final</version.resteasy>
|
||||
<version.thorntail>2.7.0.Final</version.thorntail>
|
||||
<version.javaee-api>8.0.1</version.javaee-api>
|
||||
<version.arquillian>1.6.0.Final</version.arquillian>
|
||||
<version.arquillian>1.5.0.Final</version.arquillian>
|
||||
<version.arquillian.managed.wildfly>3.0.1.Final</version.arquillian.managed.wildfly>
|
||||
|
||||
<!-- test dependencies -->
|
||||
|
|
|
@ -95,12 +95,6 @@
|
|||
</dependency>
|
||||
|
||||
<!-- test dependencies -->
|
||||
<dependency>
|
||||
<groupId>pro.taskana</groupId>
|
||||
<artifactId>taskana-common-test</artifactId>
|
||||
<version>${project.version}</version>
|
||||
<scope>test</scope>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>pro.taskana.history</groupId>
|
||||
<artifactId>taskana-simplehistory-rest-spring</artifactId>
|
||||
|
@ -127,11 +121,22 @@
|
|||
<artifactId>junit</artifactId>
|
||||
<scope>test</scope>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.junit.vintage</groupId>
|
||||
<artifactId>junit-vintage-engine</artifactId>
|
||||
<scope>test</scope>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.springframework</groupId>
|
||||
<artifactId>spring-test</artifactId>
|
||||
<scope>test</scope>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.springframework.boot</groupId>
|
||||
<artifactId>spring-boot-test</artifactId>
|
||||
<scope>test</scope>
|
||||
</dependency>
|
||||
|
||||
<!-- Brought in via Arquillian BOM, see dependencyManagement section
|
||||
above -->
|
||||
<dependency>
|
||||
|
|
|
@ -0,0 +1,92 @@
|
|||
package pro.taskana.common.test.rest;
|
||||
|
||||
import com.fasterxml.jackson.databind.DeserializationFeature;
|
||||
import com.fasterxml.jackson.databind.ObjectMapper;
|
||||
import com.fasterxml.jackson.databind.SerializationFeature;
|
||||
import com.fasterxml.jackson.datatype.jdk8.Jdk8Module;
|
||||
import com.fasterxml.jackson.datatype.jsr310.JavaTimeModule;
|
||||
import com.fasterxml.jackson.module.paramnames.ParameterNamesModule;
|
||||
import java.nio.charset.StandardCharsets;
|
||||
import java.util.Base64;
|
||||
import java.util.Collections;
|
||||
import java.util.Optional;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.core.env.Environment;
|
||||
import org.springframework.hateoas.MediaTypes;
|
||||
import org.springframework.hateoas.mediatype.hal.Jackson2HalModule;
|
||||
import org.springframework.http.HttpHeaders;
|
||||
import org.springframework.http.converter.json.MappingJackson2HttpMessageConverter;
|
||||
import org.springframework.stereotype.Component;
|
||||
import org.springframework.web.client.RestTemplate;
|
||||
import org.springframework.web.util.UriComponentsBuilder;
|
||||
|
||||
/** Helps to simplify rest api testing. */
|
||||
@Component
|
||||
public class RestHelper {
|
||||
|
||||
public static final RestTemplate TEMPLATE = getRestTemplate();
|
||||
|
||||
private Environment environment;
|
||||
private int port;
|
||||
|
||||
@Autowired
|
||||
public RestHelper(Environment environment) {
|
||||
this.environment = environment;
|
||||
}
|
||||
|
||||
public RestHelper(int port) {
|
||||
this.port = port;
|
||||
}
|
||||
|
||||
public String toUrl(String relativeUrl, Object... uriVariables) {
|
||||
return UriComponentsBuilder.fromPath(relativeUrl)
|
||||
.scheme("http")
|
||||
.host("127.0.0.1")
|
||||
.port(getPort())
|
||||
.build(false)
|
||||
.expand(uriVariables)
|
||||
.toString();
|
||||
}
|
||||
|
||||
public static HttpHeaders generateHeadersForUser(String user) {
|
||||
HttpHeaders headers = new HttpHeaders();
|
||||
headers.add("Authorization", encodeUserAndPasswordAsBasicAuth(user));
|
||||
headers.add("Content-Type", MediaTypes.HAL_JSON_VALUE);
|
||||
return headers;
|
||||
}
|
||||
|
||||
public static String encodeUserAndPasswordAsBasicAuth(String user) {
|
||||
String toEncode = user + ":" + user;
|
||||
return "Basic " + Base64.getEncoder().encodeToString(toEncode.getBytes(StandardCharsets.UTF_8));
|
||||
}
|
||||
|
||||
private int getPort() {
|
||||
return Optional.ofNullable(environment)
|
||||
.map(e -> e.getRequiredProperty("local.server.port", int.class))
|
||||
.orElse(port);
|
||||
}
|
||||
|
||||
/**
|
||||
* Return a REST template which is capable of dealing with responses in HAL format.
|
||||
*
|
||||
* @return RestTemplate
|
||||
*/
|
||||
private static RestTemplate getRestTemplate() {
|
||||
ObjectMapper mapper =
|
||||
new ObjectMapper()
|
||||
.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false)
|
||||
.configure(SerializationFeature.FAIL_ON_EMPTY_BEANS, false)
|
||||
.registerModule(new Jackson2HalModule())
|
||||
.registerModule(new ParameterNamesModule())
|
||||
.registerModule(new Jdk8Module())
|
||||
.registerModule(new JavaTimeModule());
|
||||
MappingJackson2HttpMessageConverter converter = new MappingJackson2HttpMessageConverter();
|
||||
converter.setSupportedMediaTypes(Collections.singletonList(MediaTypes.HAL_JSON));
|
||||
converter.setObjectMapper(mapper);
|
||||
|
||||
RestTemplate template = new RestTemplate();
|
||||
// important to add first to ensure priority
|
||||
template.getMessageConverters().add(0, converter);
|
||||
return template;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,22 @@
|
|||
package pro.taskana.common.test.rest;
|
||||
|
||||
import java.lang.annotation.ElementType;
|
||||
import java.lang.annotation.Retention;
|
||||
import java.lang.annotation.RetentionPolicy;
|
||||
import java.lang.annotation.Target;
|
||||
import org.springframework.boot.test.context.SpringBootTest;
|
||||
import org.springframework.test.annotation.DirtiesContext;
|
||||
import org.springframework.test.annotation.DirtiesContext.ClassMode;
|
||||
import org.springframework.test.context.ActiveProfiles;
|
||||
|
||||
/** Use this annotation to test with a spring context and a standardized configuration. */
|
||||
@Target(ElementType.TYPE)
|
||||
@Retention(RetentionPolicy.RUNTIME)
|
||||
// DirtiesContext is required to make the integration tests run with embedded LDAP.
|
||||
// Otherwise the LDAP server is not shut down correctly and will not come up again. (socket busy)
|
||||
@DirtiesContext(classMode = ClassMode.AFTER_CLASS)
|
||||
@ActiveProfiles({"test"})
|
||||
@SpringBootTest(
|
||||
classes = TestConfiguration.class,
|
||||
webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT)
|
||||
public @interface TaskanaSpringBootTest {}
|
|
@ -0,0 +1,30 @@
|
|||
package pro.taskana.common.test.rest;
|
||||
|
||||
import javax.sql.DataSource;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.beans.factory.annotation.Value;
|
||||
import org.springframework.boot.autoconfigure.SpringBootApplication;
|
||||
import org.springframework.context.annotation.Bean;
|
||||
import org.springframework.context.annotation.ComponentScan;
|
||||
import org.springframework.context.annotation.DependsOn;
|
||||
import org.springframework.jdbc.datasource.DataSourceTransactionManager;
|
||||
import org.springframework.transaction.PlatformTransactionManager;
|
||||
|
||||
import pro.taskana.sampledata.SampleDataGenerator;
|
||||
|
||||
@SpringBootApplication
|
||||
@ComponentScan("pro.taskana")
|
||||
@DependsOn("getTaskanaEngine") // wait for schema to be created BEFORE inserting test data
|
||||
public class TestConfiguration {
|
||||
|
||||
@Autowired
|
||||
public TestConfiguration(
|
||||
@Value("${taskana.schemaName:TASKANA}") String schemaName, DataSource dataSource) {
|
||||
new SampleDataGenerator(dataSource, schemaName).generateSampleData();
|
||||
}
|
||||
|
||||
@Bean
|
||||
public PlatformTransactionManager txManager(DataSource dataSource) {
|
||||
return new DataSourceTransactionManager(dataSource);
|
||||
}
|
||||
}
|
|
@ -22,6 +22,7 @@ import pro.taskana.workbasket.rest.models.WorkbasketSummaryRepresentationModel;
|
|||
public class AbstractAccTest {
|
||||
|
||||
protected RestHelper restHelper = new RestHelper(8080);
|
||||
protected static final String DEPENDENCY_VERSION = "4.12.1-SNAPSHOT";
|
||||
|
||||
protected TaskRepresentationModel getTaskResourceSample() {
|
||||
ClassificationSummaryRepresentationModel classificationResource =
|
||||
|
|
|
@ -47,7 +47,7 @@ public class TaskanaWildflyWithHistoryLoggerEnabledTest extends AbstractAccTest
|
|||
MavenCoordinates.createCoordinate(
|
||||
"pro.taskana.history",
|
||||
"taskana-loghistory-provider",
|
||||
"${project.version}",
|
||||
DEPENDENCY_VERSION,
|
||||
PackagingType.JAR,
|
||||
null);
|
||||
|
||||
|
|
|
@ -53,7 +53,7 @@ public class TaskanaWildflyWithSimpleHistoryAndHistoryLoggerEnabledTest extends
|
|||
MavenCoordinates.createCoordinate(
|
||||
"pro.taskana.history",
|
||||
"taskana-simplehistory-rest-spring",
|
||||
"${project.version}",
|
||||
DEPENDENCY_VERSION,
|
||||
PackagingType.JAR,
|
||||
null);
|
||||
|
||||
|
@ -64,7 +64,7 @@ public class TaskanaWildflyWithSimpleHistoryAndHistoryLoggerEnabledTest extends
|
|||
MavenCoordinates.createCoordinate(
|
||||
"pro.taskana.history",
|
||||
"taskana-loghistory-provider",
|
||||
"${project.version}",
|
||||
DEPENDENCY_VERSION,
|
||||
PackagingType.JAR,
|
||||
null);
|
||||
|
||||
|
|
|
@ -53,7 +53,7 @@ public class TaskanaWildflyWithSimpleHistoryEnabledTest extends AbstractAccTest
|
|||
MavenCoordinates.createCoordinate(
|
||||
"pro.taskana.history",
|
||||
"taskana-simplehistory-rest-spring",
|
||||
"${project.version}",
|
||||
DEPENDENCY_VERSION,
|
||||
PackagingType.JAR,
|
||||
null);
|
||||
|
||||
|
|
|
@ -4,7 +4,7 @@
|
|||
|
||||
<resources>
|
||||
<!--the name of your driver -->
|
||||
<resource-root path="postgresql-42.2.18.jar"/>
|
||||
<resource-root path="postgresql-42.3.1.jar"/>
|
||||
</resources>
|
||||
|
||||
<dependencies>
|
||||
|
|
|
@ -0,0 +1,449 @@
|
|||
######################
|
||||
# Base Structure
|
||||
######################
|
||||
dn: OU=Test,O=TASKANA
|
||||
ou: Organisationseinheit
|
||||
objectclass: top
|
||||
objectclass: organizationalUnit
|
||||
|
||||
dn: cn=groups,OU=Test,O=TASKANA
|
||||
cn: groups
|
||||
objectclass: top
|
||||
objectclass: container
|
||||
|
||||
dn: cn=users,OU=Test,O=TASKANA
|
||||
cn: users
|
||||
objectclass: top
|
||||
objectclass: container
|
||||
|
||||
dn: cn=other-users,OU=Test,O=TASKANA
|
||||
cn: users
|
||||
objectclass: top
|
||||
objectclass: container
|
||||
|
||||
dn: cn=organisation,OU=Test,O=TASKANA
|
||||
cn: organisation
|
||||
objectclass: top
|
||||
objectclass: container
|
||||
|
||||
|
||||
########################
|
||||
# Users General
|
||||
########################
|
||||
dn: uid=monitor,cn=users,OU=Test,O=TASKANA
|
||||
objectclass: inetorgperson
|
||||
objectclass: organizationalperson
|
||||
objectclass: person
|
||||
objectclass: top
|
||||
givenName: Monitor
|
||||
description: desc
|
||||
uid: monitor
|
||||
sn: Monitor
|
||||
ou: Organisationseinheit/Organisationseinheit IT
|
||||
cn: monitor monitor
|
||||
userPassword: monitor
|
||||
|
||||
dn: uid=taskadmin,cn=users,OU=Test,O=TASKANA
|
||||
objectclass: inetorgperson
|
||||
objectclass: organizationalperson
|
||||
objectclass: person
|
||||
objectclass: top
|
||||
givenName: Task
|
||||
description: desc
|
||||
uid: taskadmin
|
||||
sn: Admin
|
||||
ou: Organisationseinheit/Organisationseinheit IT
|
||||
cn: Task admin
|
||||
userPassword: taskadmin
|
||||
|
||||
dn: uid=admin,cn=users,OU=Test,O=TASKANA
|
||||
objectclass: inetorgperson
|
||||
objectclass: organizationalperson
|
||||
objectclass: person
|
||||
objectclass: top
|
||||
givenName: Admin
|
||||
description: desc
|
||||
uid: admin
|
||||
sn: Admin
|
||||
ou: Organisationseinheit/Organisationseinheit IT
|
||||
cn: Admin Admin
|
||||
userPassword: admin
|
||||
|
||||
dn: uid=businessadmin,cn=users,OU=Test,O=TASKANA
|
||||
objectclass: inetorgperson
|
||||
objectclass: organizationalperson
|
||||
objectclass: person
|
||||
objectclass: top
|
||||
givenName: Business
|
||||
description: desc
|
||||
memberOf: cn=business-admins,cn=groups,OU=Test,O=TASKANA
|
||||
uid: businessadmin
|
||||
sn: Admin
|
||||
ou: Organisationseinheit/Organisationseinheit IT
|
||||
cn: Business Admin
|
||||
userPassword: businessadmin
|
||||
|
||||
########################
|
||||
# Users KSC 1
|
||||
########################
|
||||
dn: uid=teamlead-1,cn=users,OU=Test,O=TASKANA
|
||||
objectclass: inetorgperson
|
||||
objectclass: organizationalperson
|
||||
objectclass: person
|
||||
objectclass: top
|
||||
givenName: Titus
|
||||
description: desc
|
||||
phoneNumber: 012345678
|
||||
mobileNumber: 09876554321
|
||||
email: Titus.Toll@taskana.de
|
||||
orgLevel1: ABC
|
||||
orgLevel2: DEF/GHI
|
||||
someDepartement: JKL
|
||||
orgLevel4: MNO/PQR
|
||||
memberOf: cn=Organisationseinheit KSC 1,cn=Organisationseinheit KSC,cn=organisation,OU=Test,O=TASKANA
|
||||
memberOf: cn=monitor-users,cn=groups,OU=Test,O=TASKANA
|
||||
memberOf: cn=business-admins,cn=groups,OU=Test,O=TASKANA
|
||||
memberOf: cn=ksc-teamleads,cn=groups,OU=Test,O=TASKANA
|
||||
uid: teamlead-1
|
||||
sn: Toll
|
||||
ou: Organisationseinheit/Organisationseinheit KSC/Organisationseinheit KSC 1
|
||||
cn: Titus Toll
|
||||
userPassword: teamlead-1
|
||||
|
||||
dn: uid=user-1-1,cn=users,OU=Test,O=TASKANA
|
||||
objectclass: inetorgperson
|
||||
objectclass: organizationalperson
|
||||
objectclass: person
|
||||
objectclass: top
|
||||
givenName: Max
|
||||
description: desc
|
||||
memberOf: cn=ksc-users,cn=groups,OU=Test,O=TASKANA
|
||||
memberOf: cn=Organisationseinheit KSC 1,cn=Organisationseinheit KSC,cn=organisation,OU=Test,O=TASKANA
|
||||
uid: user-1-1
|
||||
sn: Mustermann
|
||||
ou: Organisationseinheit/Organisationseinheit KSC/Organisationseinheit KSC 1
|
||||
cn: Max Mustermann
|
||||
userPassword: user-1-1
|
||||
|
||||
dn: uid=user-1-2,cn=users,OU=Test,O=TASKANA
|
||||
objectclass: inetorgperson
|
||||
objectclass: organizationalperson
|
||||
objectclass: person
|
||||
objectclass: top
|
||||
givenName: Elena
|
||||
description: desc
|
||||
memberOf: cn=ksc-users,cn=groups,OU=Test,O=TASKANA
|
||||
memberOf: cn=Organisationseinheit KSC 1,cn=Organisationseinheit KSC,cn=organisation,OU=Test,O=TASKANA
|
||||
uid: user-1-2
|
||||
sn: Eifrig
|
||||
ou: Organisationseinheit/Organisationseinheit KSC/Organisationseinheit KSC 1
|
||||
cn: Elena Eifrig
|
||||
userPassword: user-1-2
|
||||
|
||||
dn: uid=user-1-3,cn=users,OU=Test,O=TASKANA
|
||||
objectclass: inetorgperson
|
||||
objectclass: organizationalperson
|
||||
objectclass: person
|
||||
objectclass: top
|
||||
givenName: Elena
|
||||
description: desc
|
||||
uid: user-1-3
|
||||
sn: Faul
|
||||
ou: Organisationseinheit/Organisationseinheit KSC/Organisationseinheit KSC 1
|
||||
cn: Elena Faul
|
||||
userPassword: user-1-3
|
||||
|
||||
########################
|
||||
# Users KSC 2
|
||||
########################
|
||||
dn: uid=teamlead-2,cn=users,OU=Test,O=TASKANA
|
||||
objectclass: inetorgperson
|
||||
objectclass: organizationalperson
|
||||
objectclass: person
|
||||
objectclass: top
|
||||
givenName: Frauke
|
||||
description: desc
|
||||
memberOf: cn=Organisationseinheit KSC 2,cn=Organisationseinheit KSC,cn=organisation,OU=Test,O=TASKANA
|
||||
memberOf: cn=monitor-users,cn=groups,OU=Test,O=TASKANA
|
||||
memberOf: cn=business-admins,cn=groups,OU=Test,O=TASKANA
|
||||
memberOf: cn=ksc-teamleads,cn=groups,OU=Test,O=TASKANA
|
||||
uid: teamlead-2
|
||||
sn: Faul
|
||||
ou: Organisationseinheit/Organisationseinheit KSC/Organisationseinheit KSC 2
|
||||
cn: Frauke Faul
|
||||
userPassword: teamlead-2
|
||||
|
||||
dn: uid=user-2-1,cn=users,OU=Test,O=TASKANA
|
||||
objectclass: inetorgperson
|
||||
objectclass: organizationalperson
|
||||
objectclass: person
|
||||
objectclass: top
|
||||
givenName: Simone
|
||||
description: desc
|
||||
memberOf: cn=Organisationseinheit KSC 2,cn=Organisationseinheit KSC,cn=organisation,OU=Test,O=TASKANA
|
||||
memberOf: cn=ksc-users,cn=groups,OU=Test,O=TASKANA
|
||||
uid: user-2-1
|
||||
sn: Müller
|
||||
ou: Organisationseinheit/Organisationseinheit KSC/Organisationseinheit KSC 2
|
||||
cn: Simone Müller
|
||||
userPassword: user-2-1
|
||||
|
||||
dn: uid=user-2-2,cn=users,OU=Test,O=TASKANA
|
||||
objectclass: inetorgperson
|
||||
objectclass: organizationalperson
|
||||
objectclass: person
|
||||
objectclass: top
|
||||
givenName: Tim
|
||||
description: desc
|
||||
memberOf: cn=Organisationseinheit KSC 2,cn=Organisationseinheit KSC,cn=organisation,OU=Test,O=TASKANA
|
||||
memberOf: cn=ksc-users,cn=groups,OU=Test,O=TASKANA
|
||||
uid: user-2-2
|
||||
sn:: U2NobMOkZnJpZw==
|
||||
ou: Organisationseinheit/Organisationseinheit KSC/Organisationseinheit KSC 2
|
||||
cn:: VGltIFNjaGzDpGZyaWc=
|
||||
userPassword: user-2-2
|
||||
|
||||
dn: uid=user-2-3,cn=users,OU=Test,O=TASKANA
|
||||
objectclass: inetorgperson
|
||||
objectclass: organizationalperson
|
||||
objectclass: person
|
||||
objectclass: top
|
||||
givenName: Thomas
|
||||
description: desc
|
||||
memberOf: cn=Organisationseinheit KSC 2,cn=Organisationseinheit KSC,cn=organisation,OU=Test,O=TASKANA
|
||||
uid: user-2-3
|
||||
sn: Bach
|
||||
ou: Organisationseinheit/Organisationseinheit KSC/Organisationseinheit KSC 2
|
||||
cn: Thomas Bach
|
||||
userPassword: user-2-3
|
||||
|
||||
dn: uid=user-2-4,cn=users,OU=Test,O=TASKANA
|
||||
objectclass: inetorgperson
|
||||
objectclass: organizationalperson
|
||||
objectclass: person
|
||||
objectclass: top
|
||||
givenName: Rolf
|
||||
description: desc
|
||||
memberOf: cn=Organisationseinheit KSC 2,cn=Organisationseinheit KSC,cn=organisation,OU=Test,O=TASKANA
|
||||
uid: user-2-4
|
||||
sn: Wieland
|
||||
ou: Organisationseinheit/Organisationseinheit KSC/Organisationseinheit KSC 2
|
||||
cn: Rolf Wieland
|
||||
userPassword: user-2-4
|
||||
|
||||
dn: uid=user-2-5,cn=users,OU=Test,O=TASKANA
|
||||
objectclass: inetorgperson
|
||||
objectclass: organizationalperson
|
||||
objectclass: person
|
||||
objectclass: top
|
||||
givenName: Heike
|
||||
description: desc
|
||||
memberOf: cn=Organisationseinheit KSC 2,cn=Organisationseinheit KSC,cn=organisation,OU=Test,O=TASKANA
|
||||
uid: user-2-5
|
||||
sn: Schmidt
|
||||
ou: Organisationseinheit/Organisationseinheit KSC/Organisationseinheit KSC 2
|
||||
cn: Heike Schmidt
|
||||
userPassword: user-2-5
|
||||
|
||||
dn: uid=user-2-6,cn=users,OU=Test,O=TASKANA
|
||||
objectclass: inetorgperson
|
||||
objectclass: organizationalperson
|
||||
objectclass: person
|
||||
objectclass: top
|
||||
givenName: Kurt
|
||||
description: desc
|
||||
memberOf: cn=Organisationseinheit KSC 2,cn=Organisationseinheit KSC,cn=organisation,OU=Test,O=TASKANA
|
||||
uid: user-2-6
|
||||
sn: Maier
|
||||
ou: Organisationseinheit/Organisationseinheit KSC/Organisationseinheit KSC 2
|
||||
cn: Kurt Maier
|
||||
userPassword: user-2-6
|
||||
|
||||
dn: uid=user-2-7,cn=users,OU=Test,O=TASKANA
|
||||
objectclass: inetorgperson
|
||||
objectclass: organizationalperson
|
||||
objectclass: person
|
||||
objectclass: top
|
||||
givenName: Wiebke
|
||||
description: desc
|
||||
memberOf: cn=Organisationseinheit KSC 2,cn=Organisationseinheit KSC,cn=organisation,OU=Test,O=TASKANA
|
||||
uid: user-2-7
|
||||
sn: Meyer
|
||||
ou: Organisationseinheit/Organisationseinheit KSC/Organisationseinheit KSC 2
|
||||
cn: Wiebke Meyer
|
||||
userPassword: user-2-7
|
||||
|
||||
dn: uid=user-2-8,cn=users,OU=Test,O=TASKANA
|
||||
objectclass: inetorgperson
|
||||
objectclass: organizationalperson
|
||||
objectclass: person
|
||||
objectclass: top
|
||||
givenName: Jana
|
||||
description: desc
|
||||
memberOf: cn=Organisationseinheit KSC 2,cn=Organisationseinheit KSC,cn=organisation,OU=Test,O=TASKANA
|
||||
uid: user-2-8
|
||||
sn: Heeg
|
||||
ou: Organisationseinheit/Organisationseinheit KSC/Organisationseinheit KSC 2
|
||||
cn: Jana Heeg
|
||||
userPassword: user-2-8
|
||||
|
||||
dn: uid=user-2-9,cn=users,OU=Test,O=TASKANA
|
||||
objectclass: inetorgperson
|
||||
objectclass: organizationalperson
|
||||
objectclass: person
|
||||
objectclass: top
|
||||
givenName: Nathalie
|
||||
description: desc
|
||||
memberOf: cn=Organisationseinheit KSC 2,cn=Organisationseinheit KSC,cn=organisation,OU=Test,O=TASKANA
|
||||
uid: user-2-9
|
||||
sn: Fuchs
|
||||
ou: Organisationseinheit/Organisationseinheit KSC/Organisationseinheit KSC 2
|
||||
cn: Nathalie Fuchs
|
||||
userPassword: user-2-9
|
||||
|
||||
dn: uid=user-2-10,cn=users,OU=Test,O=TASKANA
|
||||
objectclass: inetorgperson
|
||||
objectclass: organizationalperson
|
||||
objectclass: person
|
||||
objectclass: top
|
||||
givenName: Johannes
|
||||
description: desc
|
||||
memberOf: cn=Organisationseinheit KSC 2,cn=Organisationseinheit KSC,cn=organisation,OU=Test,O=TASKANA
|
||||
uid: user-2-10
|
||||
sn: Renz
|
||||
ou: Organisationseinheit/Organisationseinheit KSC/Organisationseinheit KSC 2
|
||||
cn: Johannes Renz
|
||||
userPassword: user-2-10
|
||||
|
||||
dn: uid=das_ist_eine_sehr_sehr_sehr_sehr_sehr_lange_user_id,cn=users,OU=Test,O=TASKANA
|
||||
objectclass: inetorgperson
|
||||
objectclass: organizationalperson
|
||||
objectclass: person
|
||||
objectclass: top
|
||||
givenName: Max
|
||||
description: desc
|
||||
memberOf: cn=Organisationseinheit KSC 2,cn=Organisationseinheit KSC,cn=organisation,OU=Test,O=TASKANA
|
||||
uid: das_ist_eine_sehr_sehr_sehr_sehr_sehr_lange_user_id
|
||||
sn: Renz
|
||||
ou: Organisationseinheit/Organisationseinheit KSC/Organisationseinheit KSC 2
|
||||
cn: Max Renz
|
||||
userPassword: user-2-11
|
||||
|
||||
########################
|
||||
# Users Domäne B
|
||||
########################
|
||||
dn: uid=user-b-1,cn=users,OU=Test,O=TASKANA
|
||||
objectclass: inetorgperson
|
||||
objectclass: organizationalperson
|
||||
objectclass: person
|
||||
objectclass: top
|
||||
givenName: Bernd
|
||||
description: desc
|
||||
uid: user-b-1
|
||||
sn: Bern
|
||||
ou: Organisationseinheit/Organisationseinheit B
|
||||
cn: Bernd Bern
|
||||
userPassword: user-b-1
|
||||
|
||||
dn: uid=User-b-2,cn=users,OU=Test,O=TASKANA
|
||||
objectclass: inetorgperson
|
||||
objectclass: organizationalperson
|
||||
objectclass: person
|
||||
objectclass: top
|
||||
givenName: Brunhilde
|
||||
description: desc
|
||||
uid: User-b-2
|
||||
sn: Bio
|
||||
ou: Organisationseinheit/Organisationseinheit B
|
||||
cn: Brunhilde Bio
|
||||
userPassword: user-b-2
|
||||
|
||||
########################
|
||||
# Users in other cn
|
||||
########################
|
||||
dn: uid=otheruser,cn=other-users,OU=Test,O=TASKANA
|
||||
objectclass: inetorgperson
|
||||
objectclass: organizationalperson
|
||||
objectclass: person
|
||||
objectclass: top
|
||||
givenName: Other
|
||||
description: User in other cn than search root
|
||||
uid: otheruser
|
||||
sn: User
|
||||
ou: Other
|
||||
cn: Other User
|
||||
userPassword: otheruser
|
||||
|
||||
|
||||
########################
|
||||
# Groups
|
||||
########################
|
||||
dn: cn=ksc-users,cn=groups,OU=Test,O=TASKANA
|
||||
uniquemember: uid=user-1-1,cn=users,OU=Test,O=TASKANA
|
||||
uniquemember: uid=user-1-2,cn=users,OU=Test,O=TASKANA
|
||||
uniquemember: uid=user-2-1,cn=users,OU=Test,O=TASKANA
|
||||
uniquemember: uid=user-2-2,cn=users,OU=Test,O=TASKANA
|
||||
cn: ksc-users
|
||||
objectclass: groupofuniquenames
|
||||
objectclass: top
|
||||
|
||||
dn: cn=ksc-teamleads,cn=groups,OU=Test,O=TASKANA
|
||||
uniquemember: uid=teamlead-1,cn=users,OU=Test,O=TASKANA
|
||||
uniquemember: uid=teamlead-2,cn=users,OU=Test,O=TASKANA
|
||||
cn: ksc-teamleads
|
||||
objectclass: groupofuniquenames
|
||||
objectclass: top
|
||||
|
||||
dn: cn=business-admins,cn=groups,OU=Test,O=TASKANA
|
||||
uniquemember: uid=teamlead-1,cn=users,OU=Test,O=TASKANA
|
||||
uniquemember: uid=teamlead-2,cn=users,OU=Test,O=TASKANA
|
||||
uniquemember: uid=businessadmin,cn=users,OU=Test,O=TASKANA
|
||||
cn: business-admins
|
||||
objectclass: groupofuniquenames
|
||||
objectclass: top
|
||||
|
||||
dn: cn=monitor-users,cn=groups,OU=Test,O=TASKANA
|
||||
uniquemember: uid=teamlead-1,cn=users,OU=Test,O=TASKANA
|
||||
uniquemember: uid=teamlead-2,cn=users,OU=Test,O=TASKANA
|
||||
cn: monitor-users
|
||||
objectclass: groupofuniquenames
|
||||
objectclass: top
|
||||
|
||||
######################
|
||||
# Organizational Units
|
||||
######################
|
||||
dn: cn=Organisationseinheit KSC,cn=organisation,OU=Test,O=TASKANA
|
||||
cn: Organisationseinheit KSC
|
||||
uniquemember: cn=Organisationseinheit KSC 1,cn=Organisationseinheit KSC,cn=organisation,OU=Test,O=TASKANA
|
||||
uniquemember: cn=Organisationseinheit KSC 2,cn=Organisationseinheit KSC,cn=organisation,OU=Test,O=TASKANA
|
||||
objectclass: groupofuniquenames
|
||||
objectclass: top
|
||||
|
||||
dn: cn=Organisationseinheit KSC 1,cn=Organisationseinheit KSC,cn=organisation,OU=Test,O=TASKANA
|
||||
uniquemember: uid=teamlead-1,cn=users,OU=Test,O=TASKANA
|
||||
uniquemember: uid=user-1-1,cn=users,OU=Test,O=TASKANA
|
||||
uniquemember: uid=user-1-2,cn=users,OU=Test,O=TASKANA
|
||||
cn: Organisationseinheit KSC 1
|
||||
objectclass: groupofuniquenames
|
||||
objectclass: top
|
||||
|
||||
dn: cn=Organisationseinheit KSC 2,cn=Organisationseinheit KSC,cn=organisation,OU=Test,O=TASKANA
|
||||
uniquemember: uid=teamlead-2,cn=users,OU=Test,O=TASKANA
|
||||
uniquemember: uid=user-2-1,cn=users,OU=Test,O=TASKANA
|
||||
uniquemember: uid=user-2-2,cn=users,OU=Test,O=TASKANA
|
||||
uniquemember: uid=user-2-3,cn=users,OU=Test,O=TASKANA
|
||||
uniquemember: uid=user-2-4,cn=users,OU=Test,O=TASKANA
|
||||
uniquemember: uid=user-2-5,cn=users,OU=Test,O=TASKANA
|
||||
uniquemember: uid=user-2-6,cn=users,OU=Test,O=TASKANA
|
||||
uniquemember: uid=user-2-7,cn=users,OU=Test,O=TASKANA
|
||||
uniquemember: uid=user-2-8,cn=users,OU=Test,O=TASKANA
|
||||
uniquemember: uid=user-2-9,cn=users,OU=Test,O=TASKANA
|
||||
uniquemember: uid=user-2-10,cn=users,OU=Test,O=TASKANA
|
||||
cn: Organisationseinheit KSC 2
|
||||
objectclass: groupofuniquenames
|
||||
objectclass: top
|
||||
|
||||
dn: cn=Organisationseinheit B,cn=organisation,OU=Test,O=TASKANA
|
||||
cn: Organisationseinheit B
|
||||
objectclass: groupofuniquenames
|
||||
objectclass: top
|
Loading…
Reference in New Issue