| #!/bin/bash |
| |
| if [ "`docker ps -a | grep aaf_cass`" == "" ]; then |
| docker run --name aaf_cass -d cassandra:3.11 |
| echo "aaf_cass Starting" |
| echo "Check for running Docker Container aaf_cass, then run again." |
| # we have to exit here so that the calling script can load CQL files |
| exit |
| else |
| for CNT in 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15; do |
| if [ "`docker container logs aaf_cass | grep 'listening for CQL clients'`" == "" ]; then |
| echo "Sleep 10" |
| sleep 10 |
| else |
| YESCQL="yes" |
| break |
| fi |
| done |
| fi |
| |
| if [ "$YESCQL" == "" ]; then |
| echo "CQL Never started... exiting" |
| exit |
| fi |
| |
| echo "Creating /opt/app/cass_init dir on aaf_cass" |
| docker exec aaf_cass mkdir -p /opt/app/cass_init |
| echo "cp the following files to /opt/app/cass_init dir on aaf_cass" |
| ls ../src/main/cql |
| docker cp "../src/main/cql/." aaf_cass:/opt/app/cass_init |
| echo "The following files are on /opt/app/cass_init dir on aaf_cass" |
| docker exec -it aaf_cass 'ls /opt/app/cass_init' |
| |
| |
| echo "Docker Installed Basic Cassandra on aaf_cass. Executing the following " |
| echo "NOTE: This creator provided is only a Single Instance. For more complex Cassandra, create independently" |
| echo "" |
| echo " cd /opt/app/cass_init" |
| echo " cqlsh -u root -p root -f keyspace.cql" |
| echo " cqlsh -u root -p root -f init.cql" |
| echo " cqlsh -u root -p root -f osaaf.cql" |
| echo "" |
| echo "The following will give you a temporary identity with which to start working, or emergency" |
| echo " cqlsh -u root -p root -f temp_identity.cql" |
| echo "Sleeping for 20 seconds" |
| |
| echo "Create Keyspaces and Tables" |
| docker exec -it aaf_cass bash -c '\ |
| cd /opt/app/cass_init; \ |
| echo "Creating Keyspace";cqlsh -u root -p root -f keyspace.cql;\ |
| echo "Creating init";cqlsh -u root -p root -f init.cql;\ |
| echo "Creating osaaf";cqlsh -u root -p root -f osaaf.cql;\ |
| echo "Creating temp Identity";cqlsh -u root -p root -f temp_identity.cql' |
| |
| echo "Inspecting aafcassadra. Use to get the IP address to update org.osaaf.cassandra.props" |
| docker inspect aaf_cass | grep '"IPAddress' | head -1 |