Add latest tag to Docker Repo image
[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 # Create the AAF Config (Security) Images
13 cd ..
14 cp ../cadi/aaf/target/aaf-cadi-aaf-${VERSION}-full.jar sample/bin
15
16 # AAF Config image (for AAF itself)
17 sed -e 's/${AAF_VERSION}/'${VERSION}'/g' -e 's/${AAF_COMPONENT}/'${AAF_COMPONENT}'/g' docker/Dockerfile.config > sample/Dockerfile
18 docker build -t ${ORG}/${PROJECT}/aaf_config:${VERSION} sample
19 docker tag ${ORG}/${PROJECT}/aaf_config:${VERSION} ${DOCKER_REPOSITORY}/${ORG}/${PROJECT}/aaf_config:${VERSION}
20 docker tag ${ORG}/${PROJECT}/aaf_config:${VERSION} ${DOCKER_REPOSITORY}/${ORG}/${PROJECT}/aaf_config:latest
21
22 # AAF Agent Image (for Clients)
23 sed -e 's/${AAF_VERSION}/'${VERSION}'/g' -e 's/${AAF_COMPONENT}/'${AAF_COMPONENT}'/g' docker/Dockerfile.client > sample/Dockerfile
24 docker build -t ${ORG}/${PROJECT}/aaf_agent:${VERSION} sample
25 docker tag ${ORG}/${PROJECT}/aaf_agent:${VERSION} ${DOCKER_REPOSITORY}/${ORG}/${PROJECT}/aaf_agent:${VERSION}
26 docker tag ${ORG}/${PROJECT}/aaf_agent:${VERSION} ${DOCKER_REPOSITORY}/${ORG}/${PROJECT}/aaf_agent:latest
27
28 # Clean up 
29 rm sample/Dockerfile sample/bin/aaf-cadi-aaf-${VERSION}-full.jar
30 cd -
31 ########
32 # Second, build a core Docker Image
33 echo Building aaf_$AAF_COMPONENT...
34 # Apply currrent Properties to Docker file, and put in place.
35 sed -e 's/${AAF_VERSION}/'${VERSION}'/g' -e 's/${AAF_COMPONENT}/'${AAF_COMPONENT}'/g' Dockerfile.core >../aaf_${VERSION}/Dockerfile
36 cd ..
37 docker build -t ${ORG}/${PROJECT}/aaf_core:${VERSION} aaf_${VERSION}
38 docker tag ${ORG}/${PROJECT}/aaf_core:${VERSION} ${DOCKER_REPOSITORY}/${ORG}/${PROJECT}/aaf_core:${VERSION}
39 docker tag ${ORG}/${PROJECT}/aaf_core:${VERSION} ${DOCKER_REPOSITORY}/${ORG}/${PROJECT}/aaf_core:latest
40 rm aaf_${VERSION}/Dockerfile
41 cd -
42
43 if ["$1" == ""]; then
44     AAF_COMPONENTS=$(ls ../aaf_*HOT/bin | grep -v '\.')
45 else
46     AAF_COMPONENTS=$1
47 fi
48
49 for AAF_COMPONENT in ${AAF_COMPONENTS}; do
50     echo Building aaf_$AAF_COMPONENT...
51     sed -e 's/${AAF_VERSION}/'${VERSION}'/g' -e 's/${AAF_COMPONENT}/'${AAF_COMPONENT}'/g' Dockerfile.ms >../aaf_${VERSION}/Dockerfile
52     cd ..
53     docker build -t ${ORG}/${PROJECT}/aaf_${AAF_COMPONENT}:${VERSION} aaf_${VERSION}
54     docker tag ${ORG}/${PROJECT}/aaf_${AAF_COMPONENT}:${VERSION} ${DOCKER_REPOSITORY}/${ORG}/${PROJECT}/aaf_${AAF_COMPONENT}:${VERSION}
55     docker tag ${ORG}/${PROJECT}/aaf_${AAF_COMPONENT}:${VERSION} ${DOCKER_REPOSITORY}/${ORG}/${PROJECT}/aaf_${AAF_COMPONENT}:latest
56     rm aaf_${VERSION}/Dockerfile
57     cd -
58 done