53 Commits
Author SHA1 Message Date
Bertrand Gouny b4de6adb08 Merge branch 'release-0.7.0' into stable 2014-06-18 09:39:24 +02:00
Bertrand Gouny b98fb70cd4 Merge branch 'feature-new-tests' into release-0.7.0 2014-06-18 09:37:13 +02:00
Bertrand Gouny e936973e9c merge 2014-06-18 09:36:08 +02:00
Bertrand Gouny 223c040565 [twgit] Init release 'release-0.7.0'. 2014-06-18 09:32:05 +02:00
Bertrand Gouny 940c5afc4f new tests 2014-06-18 09:31:50 +02:00
Bertrand Gouny 857e692b3c news tests 2014-06-17 21:40:31 +02:00
Bertrand Gouny e7efbceae8 [twgit] Init feature 'feature-new-tests'. 2014-06-17 20:54:57 +02:00
Bertrand Gouny 87fea6c869 Merge branch 'hotfix-0.6.2' into stable 2014-06-17 09:43:26 +02:00
Bertrand Gouny c32c1683ed reorganisation code 2014-06-17 09:43:13 +02:00
Bertrand Gouny 5606ef1938 [twgit] Init hotfix 'hotfix-0.6.2'. 2014-06-17 09:28:20 +02:00
osixia 5125257293 Update README.md 2014-06-17 09:26:56 +02:00
osixia 2c6ceec151 Create LICENSE.txt 2014-06-17 09:26:42 +02:00
osixia d9f06d5579 Update README.md 2014-06-17 09:12:15 +02:00
osixia a31e2ce8bd Update README.md 2014-06-17 09:10:50 +02:00
Bertrand Gouny 676d3d736d Merge branch 'hotfix-0.6.1' into stable 2014-05-09 15:57:15 +02:00
Bertrand Gouny a413a31ed3 nouvelle baseimage + maj tests 2014-05-09 15:57:03 +02:00
Bertrand Gouny c00342523e [twgit] Init hotfix 'hotfix-0.6.1'. 2014-05-09 15:25:39 +02:00
Bertrand Gouny 08b5a758be Merge branch 'release-0.6.0' into stable 2014-05-08 17:54:43 +02:00
Bertrand Gouny 38e78710af Merge branch 'feature-new-base-image' into release-0.6.0 2014-05-08 17:54:31 +02:00
Bertrand Gouny e3588f93f2 [twgit] Init release 'release-0.6.0'. 2014-05-08 17:54:05 +02:00
Bertrand Gouny d7245df8bb osixia base 2014-05-08 17:53:41 +02:00
Bertrand Gouny 60293c62cb [twgit] Init feature 'feature-new-base-image'. 2014-05-07 23:25:52 +02:00
Bertrand Gouny 5f6a2c1530 Merge branch 'hotfix-0.5.1' into stable 2014-05-07 14:25:05 +02:00
Bertrand Gouny e54327660a hotfix 2014-05-07 14:24:55 +02:00
Bertrand Gouny b8f71b7953 [twgit] Init hotfix 'hotfix-0.5.1'. 2014-05-07 14:17:57 +02:00
osixia 14ebe80b99 Update README.md 2014-05-07 14:15:01 +02:00
Bertrand Gouny f50c6b3a97 Merge branch 'release-0.5.0' into stable 2014-05-07 14:12:34 +02:00
Bertrand Gouny 72f68af0fd Merge branch 'feature-ldapi' into release-0.5.0 2014-05-07 14:12:02 +02:00
Bertrand Gouny b9e85313b1 Merge branch 'feature-tests' into release-0.5.0 2014-05-07 14:11:48 +02:00
Bertrand Gouny bcaa13ac77 [twgit] Init release 'release-0.5.0'. 2014-05-07 14:11:29 +02:00
Bertrand Gouny 31b6c31d5e tests 2014-05-07 14:09:20 +02:00
Bertrand Gouny bd87b91d3a ldapi 2014-05-07 10:59:52 +02:00
Bertrand Gouny 4800e140cf [twgit] Init feature 'feature-ldapi'. 2014-05-07 10:57:57 +02:00
Bertrand Gouny df81b9ec7e [twgit] Init feature 'feature-tests'. 2014-05-07 10:57:33 +02:00
Bertrand Gouny ae2d4de5ec Merge branch 'release-0.4.0' into stable 2014-05-07 10:54:03 +02:00
Bertrand Gouny 9c542cafe2 Merge branch 'feature-clean' into release-0.4.0 2014-05-07 10:53:45 +02:00
Bertrand Gouny 2ceab05d59 [twgit] Init release 'release-0.4.0'. 2014-05-07 10:53:18 +02:00
Bertrand Gouny c5b29549a2 clean 2014-05-07 10:52:59 +02:00
Bertrand Gouny 2d97fce4e9 [twgit] Init feature 'feature-clean'. 2014-05-07 10:00:16 +02:00
Bertrand Gouny c057d3c2ac Merge branch 'hotfix-0.3.1' into stable 2014-05-07 08:29:57 +02:00
Bertrand Gouny 73bf28d2c5 tests 2014-05-07 08:29:43 +02:00
Bertrand Gouny 4e610b3b46 [twgit] Init hotfix 'hotfix-0.3.1'. 2014-05-06 19:38:45 +02:00
osixia 56705e7840 Delete delete-container.sh 2014-05-06 18:09:27 +02:00
osixia 69ac87fa51 Delete prepare.sh 2014-05-06 18:09:21 +02:00
osixia 01a9dc9d72 Delete end.sh 2014-05-06 18:09:01 +02:00
Bertrand Gouny 88ab3c3a3e Merge branch 'release-0.3.0' into stable 2014-05-06 18:07:39 +02:00
Bertrand Gouny 6026e823b0 Merge branch 'feature-tests' into release-0.3.0 2014-05-06 18:07:10 +02:00
Bertrand Gouny f6afa826b4 [twgit] Init release 'release-0.3.0'. 2014-05-06 18:01:43 +02:00
Bertrand Gouny 16843bee56 tests 2014-05-06 18:01:09 +02:00
Bertrand Gouny 144429b34d tests 2014-05-05 18:04:59 +02:00
Bertrand Gouny c7d1e15015 [twgit] Init feature 'feature-tests'. 2014-05-05 16:16:05 +02:00
osixia 0a06538f80 Update Dockerfile 2014-05-05 14:44:18 +02:00
osixia 18561ee776 Update README.md 2014-05-05 14:40:27 +02:00
24 changed files with 330 additions and 41 deletions

No files matched your search

+11 -6
View File
@@ -9,11 +9,16 @@ ENV LDAP_ADMIN_PWD toor
ENV LDAP_ORGANISATION Example Inc.
ENV LDAP_DOMAIN example.com
# /!\ To store the data outside the container, mount /var/lib/ldap as a data volume
# add -v /some/host/directory:/var/lib/ldap to the run command
# /!\ To store the data outside the container,
# mount /var/lib/ldap and /etc/ldap/slapd.d as a data volume add
# -v /some/host/directory:/var/lib/ldap and -v /some/other/host/directory:/etc/ldap/slapd.d
# to the run command
# Disable SSH
RUN rm -rf /etc/service/sshd /etc/my_init.d/00_regen_ssh_host_keys.sh
# RUN rm -rf /etc/service/sshd /etc/my_init.d/00_regen_ssh_host_keys.sh
# Enable dnsmasq
RUN /etc/enable-service dnsmasq
# Use baseimage-docker's init system.
CMD ["/sbin/my_init"]
@@ -27,16 +32,16 @@ RUN LC_ALL=C DEBIAN_FRONTEND=noninteractive apt-get install -y slapd ldap-utils
# Expose ldap default port
EXPOSE 389
# Create TSL certificats directory
# Create TLS certificats directory
RUN mkdir /etc/ldap/ssl
# Add config directory
RUN mkdir /etc/ldap/config
ADD config /etc/ldap/config
ADD service/slapd/config /etc/ldap/config
# Add slapd deamon
RUN mkdir /etc/service/slapd
ADD slapd.sh /etc/service/slapd/run
ADD service/slapd/slapd.sh /etc/service/slapd/run
# Clear out the local repository of retrieved package files
RUN apt-get clean && rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*
+21
View File
@@ -0,0 +1,21 @@
The MIT License (MIT)
Copyright (c) 2014 Osixia
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
+4 -2
View File
@@ -1,4 +1,4 @@
## docker-openldap
# docker-openldap
Fork of Nick Stenning docker-slapd :
https://github.com/nickstenning/docker-slapd
@@ -16,16 +16,18 @@ Add `-v some/host/dir:/etc/ldap/ssl` and `--dns=127.0.0.1` to the run command.
and optionaly `dhparam.pem` this file is genereted automaticaly if not present.
`--dns=127.0.0.1` allow to use certificate cn correctly.
`--dns=127.0.0.1` allow to use the certificate cn correctly.
### Example
docker run --dns=127.0.0.1 \
-v /data/ldap/db:/var/lib/ldap \
-v /data/ldap/config:/etc/ldap/slapd.d \
-v /data/ldap/ssl/:/etc/ldap/ssl \
-v /data/ldap/log/:/var/log \
-e LDAP_DOMAIN=example.com \
-e LDAP_ORGANISATION="Example Corp." \
-e LDAP_ROOTPASS=toor \
-p 389:389 -d osixia/openldap
File renamed without changes.
File renamed without changes.
+45 -33
View File
@@ -6,14 +6,16 @@ status () {
echo "---> ${@}" >&2
}
set -x
: LDAP_ADMIN_PWD=${LDAP_ADMIN_PWD}
: LDAP_DOMAIN=${LDAP_DOMAIN}
: LDAP_ORGANISATION=${LDAP_ORGANISATION}
############ Base config ############
if [ ! -e /var/lib/ldap/docker_bootstrapped ]; then
status "configuring slapd for first run"
status "configuring slapd database"
cat <<EOF | debconf-set-selections
slapd slapd/internal/generated_adminpw password ${LDAP_ADMIN_PWD}
@@ -35,42 +37,52 @@ EOF
touch /var/lib/ldap/docker_bootstrapped
else
status "slapd database found"
fi
############ Custom config ############
if [ ! -e /etc/ldap/config/docker_bootstrapped ]; then
status "Custom config"
slapd -h "ldapi:///" -u openldap -g openldap
chown -R openldap:openldap /etc/ldap
# TLS
if [ -e /etc/ldap/ssl/ldap.crt ] && [ -e /etc/ldap/ssl/ldap.key ] && [ -e /etc/ldap/ssl/ca.crt ]; then
status "certificates found"
chmod 600 /etc/ldap/ssl/ldap.key
# create DHParamFile if not found
[ -f /etc/ldap/ssl/dhparam.pem ] || openssl dhparam -out /etc/ldap/ssl/dhparam.pem 2048
ldapmodify -Y EXTERNAL -H ldapi:/// -f /etc/ldap/config/auto/tls.ldif -Q
# add fake dnsmasq route to certificate cn
cn=$(openssl x509 -in /etc/ldap/ssl/ldap.crt -subject -noout | sed -n 's/.*CN=\(.*\)\/*\(.*\)/\1/p')
echo "127.0.0.1 " $cn >> /etc/dhosts
fi
# Replication
# todo :)
# Other config files
for f in $(find /etc/ldap/config -maxdepth 1 -name \*.ldif -type f); do
status "Processing file ${f}"
ldapmodify -Y EXTERNAL -H ldapi:/// -f $f -Q
done
kill -INT `cat /run/slapd/slapd.pid`
touch /etc/ldap/config/docker_bootstrapped
else
status "found already-configured slapd"
fi
############ Dynamic config ############
slapd -h "ldap:/// ldapi:///" -u openldap -g openldap
chown -R openldap:openldap /etc/ldap
# TLS
if [ -e /etc/ldap/ssl/ldap.crt ] && [ -e /etc/ldap/ssl/ldap.key ] && [ -e /etc/ldap/ssl/ca.crt ]; then
status "certificates found"
chmod 600 /etc/ldap/ssl/ldap.key
# create DHParamFile if not found
[ -f /etc/ldap/ssl/dhparam.pem ] || openssl dhparam -out /etc/ldap/ssl/dhparam.pem 2048
ldapmodify -Y EXTERNAL -H ldapi:/// -f /etc/ldap/config/auto/tls.ldif
# add fake dnsmasq route to certificate cn
cn=$(openssl x509 -in /etc/ldap/ssl/ldap.crt -subject -noout | sed -n 's/.*CN=\(.*\).\^*/\1/p')
echo "127.0.0.1 " $cn >> /etc/dhosts
fi
# Replication
# todo
# Other config files
for f in $(find /etc/ldap/config -maxdepth 1 -name \*.ldif -type f); do
status "Processing file ${f}"
ldapmodify -Y EXTERNAL -H ldapi:/// -f $f
done
pkill slapd
status "starting slapd on default port 389"
set -x
exec /usr/sbin/slapd -h "ldap:///" -u openldap -g openldap -d -1
Executable
+15
View File
@@ -0,0 +1,15 @@
#!/bin/sh
# Usage
# sudo ./test.sh
# add -v for verbose mode (or type whatever you like !) :p
. test/tools/run.sh
run_test tools/build-container.sh "Successfully built"
run_test simple.sh "dn: dc=example,dc=com"
run_test tls.sh "dn: dc=example,dc=com"
run_test db.sh "dn: dc=otherdomain,dc=com"
. test/tools/end.sh
Executable
+24
View File
@@ -0,0 +1,24 @@
#!/bin/sh
dir=$(dirname $0)
. $dir/tools/config.prop
if [ -d "$testDir" ]; then
rm -r $testDir
fi
mkdir $testDir
mkdir $testDir/db
mkdir $testDir/config
runOptions="-e LDAP_DOMAIN=otherdomain.com -v $testDir/db:/var/lib/ldap -v $testDir/config:/etc/ldap/slapd.d"
. $dir/tools/run-container.sh
$dir/tools/delete-container.sh
runOptions="-v $testDir/db:/var/lib/ldap -v $testDir/config:/etc/ldap/slapd.d"
. $dir/tools/run-container.sh
echo "ldapsearch -x -h $IP -b dc=otherdomain,dc=com"
ldapsearch -x -h $IP -b dc=otherdomain,dc=com
rm -r $testDir
$dir/tools/delete-container.sh
Executable
+10
View File
@@ -0,0 +1,10 @@
#!/bin/sh
dir=$(dirname $0)
. $dir/tools/config.prop
. $dir/tools/run-container.sh
echo "ldapsearch -x -h $IP -b dc=example,dc=com"
ldapsearch -x -h $IP -b dc=example,dc=com
$dir/tools/delete-container.sh
Executable
+10
View File
@@ -0,0 +1,10 @@
#!/bin/sh
dir=$(dirname $0)
. $dir/tools/config.prop
. $dir/tls/run.sh
echo "ldapsearch -x -h $certCN -b dc=example,dc=com -ZZ"
ldapsearch -x -h $certCN -b dc=example,dc=com -ZZ
. $dir/tls/end.sh
+7
View File
@@ -0,0 +1,7 @@
#!/bin/sh
sed -i '/'"$addLine"'/d' /etc/hosts
cp /etc/ldap/ldap.conf.old /etc/ldap/ldap.conf
rm /etc/ldap/ldap.conf.old
$dir/tools/delete-container.sh
+16
View File
@@ -0,0 +1,16 @@
#!/bin/sh
runOptions="--dns=127.0.0.1 -v `pwd`/test/tls/ssl:/etc/ldap/ssl"
. $dir/tools/run-container.sh
cert=$(echo $dir/tls/ssl/ldap.crt)
certCN=$(openssl x509 -in $cert -subject -noout | sed -n 's/.*CN=\(.*\)\/*\(.*\)/\1/p')
addLine=$(echo $IP $certCN)
echo $addLine >> /etc/hosts
cp /etc/ldap/ldap.conf /etc/ldap/ldap.conf.old
sed -i 's,TLS_CACERT.*,TLS_CACERT '"$cert"',g' /etc/ldap/ldap.conf
sleep 5
+21
View File
@@ -0,0 +1,21 @@
-----BEGIN CERTIFICATE-----
MIIDZzCCAh+gAwIBAgIEU2ehnzANBgkqhkiG9w0BAQsFADAjMSEwHwYDVQQDExhU
ZXN0IENBIENvbXBhbnkgLSBPc2l4aWEwHhcNMTQwNTA1MTQzNTExWhcNMTUwNTA1
MTQzNTExWjAjMSEwHwYDVQQDExhUZXN0IENBIENvbXBhbnkgLSBPc2l4aWEwggFS
MA0GCSqGSIb3DQEBAQUAA4IBPwAwggE6AoIBMQDdf+DVT4rPGxNB1SwL6git8Lw1
AsEvd+rHAMKyCSRxbJywvtN/OKxVz4qWCkoRvcffG0uyoWRE+1w6DnT8ON+8uvuI
2wbrLydFxuZdouZZJiX0QbXWra9lQpDWO2EAiPFchbN/K9+fXwV4SpsI3B7bGwM/
sVtn6khbxvtzn+9yUmjIpA7q8i9NLVoX8UwagANtFIVE/Dc/MwaX7ayu6yYiNLXx
GHzWXzQcTS6vWcVaf+pkq6/zZdXn0jVNfqnwAu3ooTWO3BeuQvGaQeRpRVlM0lPh
oM7YFhR8b13Y5EmkZtSjoM+7ZOKF5mqBvluj65gIcQxnx4l4YCZ4MUVAlZBYc87h
2JSYrAlq6eBhJzkNDi21jqtqSr1i08XICZrz4Vk8lrexWbRGzyz537La1LYNAgMB
AAGjQzBBMA8GA1UdEwEB/wQFMAMBAf8wDwYDVR0PAQH/BAUDAwcEADAdBgNVHQ4E
FgQUnod7FQfSDLyWVeBSTTdCriQoEHYwDQYJKoZIhvcNAQELBQADggExAGtv/8Ot
3Acs+KlR+0OBtnWe6sfzfQ2fRJvol7szp0Nto+zTZLbtCEvNGIVkd8eLrm9a9soa
pY/pC6dAPPZHho/G46quSjtSARU/tlbabkRsCfHiWIvtjqKIyzqk+YjOc767pd0G
iWKxF98sI4fKdlZ+Aqw+9vO2KwQMYEtrIiCbPUYMff/BzxkrwUBnYcTjISPwEd3Z
JylfG78qsB8N6UOf89jRX2O7HCy6CGJvcuxbkwaCd5iqgLhBXj9bU7xgy/A2udav
JV/uV+vWDcy8cI22Xz1jfPpimAZjv+Qb3NjDX5nxjTciAEsNges0QdxZ71dfEqo+
DGSImtM8ORivPw7oXADztCC+11KcV4THa6wmu+Sblsxe46ldAwb6MLvMN04zALUN
mW4ojToqYgz9Jgc=
-----END CERTIFICATE-----
+8
View File
@@ -0,0 +1,8 @@
-----BEGIN DH PARAMETERS-----
MIIBCAKCAQEAwC8hQ6nZ2kNNmZAGGYN8++rUvNlDjKqdwWubUnqY08ng6FfGcouL
VSvgsF3LeERW/h4hrkgN983QjwrbBOrNp+7B59lhCs6Acvi87dXf3iaGNy4Gca43
ERVkAJ7IWdXydyb9COANRtmBb1JvvYMAeVeMdofk8EcOW/kUV2adAQKluAcVhgRQ
Pesp5i6Lv1kN5zVHDGkrJz5h0Mzi35aYia0gSnVCqEzmU7Omnz/gXY3Jdx91ym5Y
2dTZuUZgIhco2bfPbhDl/1g0a1PWz7rxw24KJloNZC3nEt3JqIto83GsgaUtYxFT
EWINSpghTjl4Z0CGCamJ6HXsNJGaVUXuGwIBAg==
-----END DH PARAMETERS-----
+19
View File
@@ -0,0 +1,19 @@
-----BEGIN CERTIFICATE-----
MIIDAzCCAbugAwIBAgIEU2eiHTANBgkqhkiG9w0BAQsFADAjMSEwHwYDVQQDExhU
ZXN0IENBIENvbXBhbnkgLSBPc2l4aWEwHhcNMTQwNTA1MTQzNzE3WhcNMjQwNTAy
MTQzNzE3WjBAMR4wHAYDVQQKExVUZXN0IENvbXBhbnkgLSBPc2l4aWExHjAcBgNV
BAMTFWxkYXAtdGVzdC5leGFtcGxlLmNvbTCBnzANBgkqhkiG9w0BAQEFAAOBjQAw
gYkCgYEA0/9/VYQARBLg7TrEiO4DAjcBAt3u3IQNNo8YdsL9iGwmRTPOspxOBVuQ
2AVEIuT+4KLnm01q1NA+tEvXdfXI9eIN5zjCVTdt6VqwrF9E3zWxYEkuSJ4FWOhN
dc0837hWBg+mBl/d6fSTkmeRc9fpwwr1jK7t10/BIzMr/pCzf10CAwEAAaN2MHQw
DAYDVR0TAQH/BAIwADATBgNVHSUEDDAKBggrBgEFBQcDATAPBgNVHQ8BAf8EBQMD
B6AAMB0GA1UdDgQWBBThLwuObrBzlp4qsKs0NHFMrCgn8jAfBgNVHSMEGDAWgBSe
h3sVB9IMvJZV4FJNN0KuJCgQdjANBgkqhkiG9w0BAQsFAAOCATEAiAl9RGibKsfQ
5Vbz2ZjsykzYj9Dhkxp7fc7RdrK0SEHGXn8Qeg5jf+j9DtfhTrZPVF7Jn4WOvuqh
okQPrwRaDox6rtFPjsIR9JIO3/N2OvA3ozQyWqzB1ksU7CHJ5jGRskHBftSH2xwF
kdGvSMIAmr9VpZ/sp4ykmADWC/bfz8BXYJDOsCBzJMtss/12hBqiJQhSsuBAsOT7
40hG0t2S7mjGHWDF9PoARmNQ7X3Xc8j7V+dXLpNfZfc+htgI27WcOv7al4kxd//p
22a77U/q+9B1CV8T2q1UTRnQqPHxtgoRLd+5qzEtzBW37ecAs2eAs9Z7D3O/fScu
v0RxHSpnZDtL/JZcf3KO96l4sqCp6Ue5Ldg3tOvD4O46hjrlvUYnHcDdJjNYZ7rD
f5kGXs20Mg==
-----END CERTIFICATE-----
+15
View File
@@ -0,0 +1,15 @@
-----BEGIN RSA PRIVATE KEY-----
MIICWwIBAAKBgQDT/39VhABEEuDtOsSI7gMCNwEC3e7chA02jxh2wv2IbCZFM86y
nE4FW5DYBUQi5P7gouebTWrU0D60S9d19cj14g3nOMJVN23pWrCsX0TfNbFgSS5I
ngVY6E11zTzfuFYGD6YGX93p9JOSZ5Fz1+nDCvWMru3XT8EjMyv+kLN/XQIDAQAB
AoGAHY7OgKxWYydkr/7VHyhcSAdGP1GVN667ruM1rH1UXxyBG331MEcFw853+/6D
+P+Hn+dmtmsNXZ2pWHcIk/xQZ+MEsAdm+OZ1qpBJjHA0izJ6sqZaNxSToKCR4SHM
/ACPAKqM9r2g1jqXzLKzgHBVc25Fonb1vUilTpC3YfaN+sECQQDmQGEcEK9Lvyi9
RV1fONDP3Z9cPRaSzpjUjlQAWNbhvcoUYV4AOy+tVClDErRIs/Oo+wCOL+bHlMom
zghcmxThAkEA67SPV0pNFR32gXvRZT4uKvCJcAjmNY4LMpet5DJ41Spq6+lbqXwY
1e87zEei1UvdmEXOjVsa1wXcg8Ks+/59/QJAHh+CFOfh5ykFLW3rv09xkiBOfwTG
9UHuILDWMI1u322zCGOMpr8Xh7ehBlNmHrTcRdlAw1lk+etvXxBJa8QmQQJABbNT
OCg63wTfflgxQ0KSuUUh/cypTKhHywxyDy/NTlJ9TYFSTzIKI7pqdtFQtdnk3Rbr
HO4UIxkoMSOXLW0FPQJARScXqZd7Lmwlw+ovAubfdOZdxjWGFZLRRZifiYZqtnQ1
aw8PjdkaIPxLjCwSOelV9SsMue6a7nvkxKEn6QbT0w==
-----END RSA PRIVATE KEY-----
+7
View File
@@ -0,0 +1,7 @@
#!/bin/sh
. $(dirname $0)/config.prop
docker.io build -t $testImage .
#docker.io build --no-cache=true -t $testImage .
+3
View File
@@ -0,0 +1,3 @@
testImage=openldap-test
testContainer=openldap-test-container
testDir=/osixia-test-docker-openldap
+11
View File
@@ -0,0 +1,11 @@
#!/bin/sh
. $(dirname $0)/config.prop
# remove test container
res=$(docker.io ps -a | grep -c "$testContainer")
if [ $res -ne 0 ]; then
docker.io stop $testContainer
docker.io rm $testContainer
fi
+10
View File
@@ -0,0 +1,10 @@
#!/bin/sh
. $(dirname $0)/config.prop
# remove test image
res=$(docker.io images | grep -c "$testImage")
if [ $res -ne 0 ]; then
#docker.io rmi $testImage
fi
+8
View File
@@ -0,0 +1,8 @@
#!/bin/sh
dir=$(dirname $0)
$dir/delete-container.sh > /dev/null 2>&1
$dir/delete-image.sh > /dev/null 2>&1
echo "------- End -------"
echo $error " failed " $ok " succeeded"
+5
View File
@@ -0,0 +1,5 @@
#!/bin/sh
dir=$(dirname $0)
$dir/delete-container.sh
$dir/delete-image.sh
+14
View File
@@ -0,0 +1,14 @@
#!/bin/sh
echo "docker.io run --name $testContainer $runOptions -d $testImage"
ID=`docker.io run --name $testContainer $runOptions -d $testImage`
sleep 7
echo " --> Obtaining IP"
IP=`docker inspect -f "{{ .NetworkSettings.IPAddress }}" $ID`
if [ "$IP" = "" ]; then
abort "Unable to obtain container IP"
exit 1
else
echo " -->" $IP
fi
+46
View File
@@ -0,0 +1,46 @@
#!/bin/sh
# Usage
# sudo ./test.sh
# add -v for verbose mode (or type whatever you like !) :p
verbose=$1
error=0
ok=0
echo_start () {
echo "------- Test: $* -------"
}
echo_error () {
echo "\n$(tput setaf 1)/!\ $* failed$(tput sgr0)\n"
error=`expr $error + 1`
}
echo_ok () {
echo "\n--> $* ok\n"
ok=`expr $ok + 1`
}
run_test () {
test=$1
out=test/test.out
echo_start $test
if [ -z ${verbose} ]; then
./test/$test > $out 2>&1
else
./test/$test | tee $out 2>&1
fi
if [ "$(grep -c "$2" $out)" -eq 0 ]; then
echo_error $test
else
echo_ok $test
fi
rm $out
}
./test/tools/prepare.sh > /dev/null 2>&1