Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file distributed with this work for additional information regarding copyright ownership. The ASF licenses this file to you under the Apache License, Version 2.0 (the “License”); you may not use this file except in compliance with the License. You may obtain a copy of the License at
https://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an “AS IS” BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Minimum software requirements:
a. clone git latest:
git clone https://gitbox.apache.org/repos/asf/directory-fortress-core.git cd directory-fortress-core
b. or clone git release:
git clone --branch [version] https://gitbox.apache.org/repos/asf/directory-fortress-core.git cd directory-fortress-core
c. or download source package from Apache:
wget https://www.apache.org/dist/directory/fortress/dist/[version]/fortress-core-[version]-source-release.zip unzip fortress-core-[version]-source-release.zip cd fortress-core-[version]
a. build the ApacheDS docker image (trailing dot matters):
docker build -t apachedirectory/apacheds-for-apache-fortress-tests -f src/docker/apacheds-for-apache-fortress-tests/Dockerfile .
b. or pull the latest prebuilt image from Dockerhub:
docker pull apachedirectory/apacheds-for-apache-fortress-tests
docker run --name=apacheds -d -p 10389:10389 -P apachedirectory/apacheds-for-apache-fortress-tests
root@localhost:/opt/fortress/directory-fortress-core# docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 7df7ab967737 apachedirectory/apacheds-for-apache-fortress-tests "sh -c 'service ${AP…" 10 minutes ago Up 10 minutes 0.0.0.0:10389->10389/tcp, :::10389->10389/tcp apacheds
a. start
docker run --name=apacheds -d -p 10389:10389 -P apachedirectory/apacheds-for-apache-fortress-tests
b. stop
docker stop apacheds
c. remove
docker rm apacheds
d. view the logs
docker logs apacheds
e. inspect
docker inspect apacheds
f. connect via bash
docker exec -it apacheds bash
#!/bin/bash export M2_HOME=... export JAVA_HOME=... export PATH=$PATH:$M2_HOME/bin
cp build.properties.example build.properties
mvn clean install
From fortress core base folder, enter the following commands:
a. To use the config from earlier:
mvn install -Dload.file=./ldap/setup/refreshLDAPData.xml
mvn -Dtest=FortressJUnitTest test
More about this step:
NUMBER OF ADDS: 1146 NUMBER OF BINDS: 1130 NUMBER OF DELETES: 0 NUMBER OF MODS: 4247 NUMBER OF READS: 20176 NUMBER OF SEARCHES: 7045 Tests run: 128, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 335.906 sec - in org.apache.directory.fortress.core.impl.FortressJUnitTest Results : Tests run: 128, Failures: 0, Errors: 0, Skipped: 0 [INFO] [INFO] --- maven-antrun-plugin:1.8:run (fortress-load) @ fortress-core --- [INFO] Executing tasks fortress-load: [INFO] Executed tasks [INFO] [INFO] --- maven-antrun-plugin:1.8:run (fortress-load-debug) @ fortress-core --- [INFO] Executing tasks fortress-load-debug: [INFO] Executed tasks [INFO] ------------------------------------------------------------------------ [INFO] BUILD SUCCESS [INFO] ------------------------------------------------------------------------ [INFO] Total time: 05:58 min [INFO] Finished at: 2022-01-02T15:23:11Z [INFO] ------------------------------------------------------------------------
mvn -Dtest=FortressJUnitTest test
NUMBER OF ADDS: 993 NUMBER OF BINDS: 1130 NUMBER OF DELETES: 1355 NUMBER OF MODS: 8389 NUMBER OF READS: 27331 NUMBER OF SEARCHES: 9582 Tests run: 162, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 378.525 sec - in org.apache.directory.fortress.core.impl.FortressJUnitTest Results : Tests run: 162, Failures: 0, Errors: 0, Skipped: 0 [INFO] [INFO] --- maven-antrun-plugin:1.8:run (fortress-load) @ fortress-core --- [INFO] Executing tasks fortress-load: [INFO] Executed tasks [INFO] [INFO] --- maven-antrun-plugin:1.8:run (fortress-load-debug) @ fortress-core --- [INFO] Executing tasks fortress-load-debug: [INFO] Executed tasks [INFO] ------------------------------------------------------------------------ [INFO] BUILD SUCCESS [INFO] ------------------------------------------------------------------------ [INFO] Total time: 06:43 min [INFO] Finished at: 2022-01-02T15:30:15Z [INFO] ------------------------------------------------------------------------
Test Notes:
Here are some common commands needed to manage the Docker image.
docker build -t apachedirectory/apacheds-for-apache-fortress-tests -f src/docker/apacheds-for-apache-fortress-tests/Dockerfile .
Or just to be sure don't use cached layers:
docker build --no-cache=true -t apachedirectory/apacheds-for-apache-fortress-tests -f src/docker/apacheds-for-apache-fortress-tests/Dockerfile .
docker run --name=apacheds -d -p 10389:10389 -P apachedirectory/apacheds-for-apache-fortress-tests
docker exec -it apacheds bash
docker restart apacheds
docker stop apacheds docker rm apacheds