Temporalio/admin-tools using docker to create cassandra schema

Hi Kasi, thank you for the question!

This section of Temporal Helm Chart README describes using temporal-cassandra-tool for initializing Temporal keyspaces in Cassandra.

And here is a fragment of how our CI/CD pipelines do this, via the admin-tools container running in the instance’s kubernetes cluster.

     # Setup keyspaces.
     kubectl exec -it services/temporaltest-admintools -- bash -c "CASSANDRA_HOST=cassandra.default.svc.cluster.local CASSANDRA_PORT=9042 temporal-cassandra-tool create-Keyspace -k temporal"
     kubectl exec -it services/temporaltest-admintools -- bash -c "CASSANDRA_HOST=cassandra.default.svc.cluster.local CASSANDRA_PORT=9042 CASSANDRA_KEYSPACE=temporal temporal-cassandra-tool setup-schema -v 0.0"
     kubectl exec -it services/temporaltest-admintools -- bash -c "CASSANDRA_HOST=cassandra.default.svc.cluster.local CASSANDRA_PORT=9042 CASSANDRA_KEYSPACE=temporal ./temporal-cassandra-tool update -schema-dir /etc/temporal/schema/cassandra/temporal/versioned"
     kubectl exec -it services/temporaltest-admintools -- bash -c "CASSANDRA_HOST=cassandra.default.svc.cluster.local CASSANDRA_PORT=9042 temporal-cassandra-tool create-Keyspace -k temporal_visibility"
     kubectl exec -it services/temporaltest-admintools -- bash -c "CASSANDRA_HOST=cassandra.default.svc.cluster.local CASSANDRA_PORT=9042 CASSANDRA_KEYSPACE=temporal_visibility ./temporal-cassandra-tool setup-schema  -v 0.0"
     kubectl exec -it services/temporaltest-admintools -- bash -c "CASSANDRA_HOST=cassandra.default.svc.cluster.local CASSANDRA_PORT=9042 CASSANDRA_KEYSPACE=temporal_visibility ./temporal-cassandra-tool update -schema-dir /etc/temporal/schema/cassandra/visibility/versioned"

I hope this helps!

Thank you,
Mark.