94fc7f46b702ffc9a4bdb155ec3b76ccb16cde81
[aaf/authz.git] / auth / docker / dbuild.sh
1 #!/bin/bash
2 #
3 # Docker Building Script.  Reads all the components generated by install, on per-version basis
4 #
5 # Pull in Variables from d.props
6 if [ ! -e ./d.props ]; then
7     cp d.props.init d.props
8 fi
9
10 . ./d.props
11
12 echo "Building Containers for aaf components, version $VERSION"
13
14 # AAF_cass now needs a version...
15 cd ../auth-cass/docker
16 bash ./dbuild.sh
17 cd -
18
19 # Create the AAF Config (Security) Images
20 cd ..
21 cp ../cadi/aaf/target/aaf-cadi-aaf-${VERSION}-full.jar sample/bin
22 cp -Rf ../conf/CA sample
23
24 # AAF Config image (for AAF itself)
25 sed -e 's/${AAF_VERSION}/'${VERSION}'/g' -e 's/${AAF_COMPONENT}/'${AAF_COMPONENT}'/g' docker/Dockerfile.config > sample/Dockerfile
26 docker build -t ${ORG}/${PROJECT}/aaf_config:${VERSION} sample
27 docker tag ${ORG}/${PROJECT}/aaf_config:${VERSION} ${DOCKER_REPOSITORY}/${ORG}/${PROJECT}/aaf_config:${VERSION}
28
29 # AAF Agent Image (for Clients)
30 sed -e 's/${AAF_VERSION}/'${VERSION}'/g' -e 's/${AAF_COMPONENT}/'${AAF_COMPONENT}'/g' docker/Dockerfile.client > sample/Dockerfile
31 docker build -t ${ORG}/${PROJECT}/aaf_agent:${VERSION} sample
32 docker tag ${ORG}/${PROJECT}/aaf_agent:${VERSION} ${DOCKER_REPOSITORY}/${ORG}/${PROJECT}/aaf_agent:${VERSION}
33
34 # Clean up 
35 rm sample/Dockerfile sample/bin/aaf-cadi-aaf-${VERSION}-full.jar
36 rm -Rf sample/CA
37 cd -
38
39 ########
40 # Second, build a core Docker Image
41 echo Building aaf_$AAF_COMPONENT...
42 # Apply currrent Properties to Docker file, and put in place.
43 sed -e 's/${AAF_VERSION}/'${VERSION}'/g' -e 's/${AAF_COMPONENT}/'${AAF_COMPONENT}'/g' Dockerfile.core >../aaf_${VERSION}/Dockerfile
44 cd ..
45 docker build -t ${ORG}/${PROJECT}/aaf_core:${VERSION} aaf_${VERSION}
46 docker tag ${ORG}/${PROJECT}/aaf_core:${VERSION} ${DOCKER_REPOSITORY}/${ORG}/${PROJECT}/aaf_core:${VERSION}
47 rm aaf_${VERSION}/Dockerfile
48 cd -
49
50 if ["$1" == ""]; then
51     AAF_COMPONENTS=$(ls ../aaf_*HOT/bin | grep -v '\.')
52 else
53     AAF_COMPONENTS=$1
54 fi
55
56 for AAF_COMPONENT in ${AAF_COMPONENTS}; do
57     echo Building aaf_$AAF_COMPONENT...
58     sed -e 's/${AAF_VERSION}/'${VERSION}'/g' -e 's/${AAF_COMPONENT}/'${AAF_COMPONENT}'/g' Dockerfile.ms >../aaf_${VERSION}/Dockerfile
59     cd ..
60     docker build -t ${ORG}/${PROJECT}/aaf_${AAF_COMPONENT}:${VERSION} aaf_${VERSION}
61     docker tag ${ORG}/${PROJECT}/aaf_${AAF_COMPONENT}:${VERSION} ${DOCKER_REPOSITORY}/${ORG}/${PROJECT}/aaf_${AAF_COMPONENT}:${VERSION}
62     rm aaf_${VERSION}/Dockerfile
63     cd -
64 done