I want to provide folks with a brief summary of what I have been up to prior to the next SIG meeting. As mentioned in a previous email, I have created https://github.com/jsanda/cassandra-operator and started adding code.
Goals or objectives include: - Increase collaboration - Spur more in-depth discussion - Ramp up a project that can eventually be considered for adoption within ASF, presumably as a subproject of Cassandra Objectives do not include: - Reinvent work that has already been done in existing operator projects - Accumulating a lot of tech debt Details: I am using operator-sdk v0.19.0 which has a bunch of changes from the version I was previously using, namely it uses the same scaffolding and project structure as Kubebuilder. This includes extensive use of kustomize. The test framework has been removed from operator-sdk. I have literally (and shamelessly) been copying/pasting bits of code from both cass-operator and from casskop. So far the controller generates a couple headless services and a StatefulSet. I currently have some things hard coded, like the number of replicas in the StatefulSet, as I am just trying to sanity check things. I started off using the "default" Docker Hub Cassandra image. I needed to make some changes to C* configs, so I added initial support for cass-config-builder <https://github.com/datastax/cass-config-builder>. I had to extend the Cassandra image in order to be able to copy config files into the CASSANDRA_CONF dir. cass-config-builder configures Cassandra to use org.apache.cassandra.locator.K8SeedProvider. This class however is defined in management-api-for-apache-cassandra <https://github.com/datastax/management-api-for-apache-cassandra>, i.e., the DataStax management sidecar. I am not using the management sidecar yet, but updated my C* image to include the agent JAR which contains the K8SeedProvider class. I am still trying to iron out some of the wrinkles. There are no integration/e2e tests yet. I don't want to get too much further along without having some decent e2e test coverage. That's all for now. Thanks - John