diff --git a/examples/cassandra/image/Dockerfile b/examples/cassandra/image/Dockerfile index ca7f1566e22..2ebd62fa5ab 100644 --- a/examples/cassandra/image/Dockerfile +++ b/examples/cassandra/image/Dockerfile @@ -19,7 +19,7 @@ COPY logback.xml /etc/cassandra/logback.xml COPY run.sh /run.sh COPY kubernetes-cassandra.jar /kubernetes-cassandra.jar -RUN chmod a+x /run.sh && \ +RUN chmod a+rx /run.sh && \ mkdir -p /cassandra_data/data && \ chown -R cassandra.cassandra /etc/cassandra /cassandra_data && \ chmod o+w -R /etc/cassandra /cassandra_data diff --git a/examples/cassandra/image/Makefile b/examples/cassandra/image/Makefile index e1c406beca9..79497b69598 100644 --- a/examples/cassandra/image/Makefile +++ b/examples/cassandra/image/Makefile @@ -4,11 +4,15 @@ VERSION=v7 all: build -# TODO: build the jar and copy it in -build: - docker build -t gcr.io/google_containers/cassandra:${VERSION} . +kubernetes-cassandra.jar: ../java/* ../java/src/io/k8s/cassandra/*.java + cd ../java && mvn package + mv ../java/target/kubernetes-cassandra*.jar kubernetes-cassandra.jar + cd ../java && mvn clean + +build: kubernetes-cassandra.jar + docker build -t gcr.io/google_containers/cassandra:${VERSION} . push: build - gcloud docker push gcr.io/google_containers/cassandra:${VERSION} + gcloud docker push gcr.io/google_containers/cassandra:${VERSION} -.PHONY: all +.PHONY: all build push diff --git a/examples/cassandra/image/kubernetes-cassandra.jar b/examples/cassandra/image/kubernetes-cassandra.jar index e9220f4009a..cb9e9a2c63b 100644 Binary files a/examples/cassandra/image/kubernetes-cassandra.jar and b/examples/cassandra/image/kubernetes-cassandra.jar differ diff --git a/examples/cassandra/java/src/io/k8s/cassandra/KubernetesSeedProvider.java b/examples/cassandra/java/src/io/k8s/cassandra/KubernetesSeedProvider.java index b194707d480..58978de96a4 100644 --- a/examples/cassandra/java/src/io/k8s/cassandra/KubernetesSeedProvider.java +++ b/examples/cassandra/java/src/io/k8s/cassandra/KubernetesSeedProvider.java @@ -129,8 +129,10 @@ public class KubernetesSeedProvider implements SeedProvider { // Here is a problem point, endpoints.subsets can be null in first node cases. if (endpoints.subsets != null && !endpoints.subsets.isEmpty()){ for (Subset subset : endpoints.subsets) { - for (Address address : subset.addresses) { - list.add(InetAddress.getByName(address.ip)); + if (subset.addresses != null && !subset.addresses.isEmpty()) { + for (Address address : subset.addresses) { + list.add(InetAddress.getByName(address.ip)); + } } } }