summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDana Powers <dana.powers@gmail.com>2019-03-21 08:38:08 -0700
committerDana Powers <dana.powers@gmail.com>2019-03-21 08:38:08 -0700
commit303084420f218ea2fbe7c2bc50c238589ba2859e (patch)
tree02fb37d3264267285ae97cbfcb382eaff996c47b
parentee4a53e9e5ae93231d6f7010f263b30a9924dabb (diff)
downloadkafka-python-gen_ssl_resource.tar.gz
Generate SSL certificates for local testinggen_ssl_resource
-rw-r--r--test/fixtures.py29
1 files changed, 29 insertions, 0 deletions
diff --git a/test/fixtures.py b/test/fixtures.py
index 8b156e6..d4e8e43 100644
--- a/test/fixtures.py
+++ b/test/fixtures.py
@@ -41,6 +41,35 @@ def get_open_port():
sock.close()
return port
+def gen_ssl_resources(directory):
+ os.system("""
+ cd {0}
+ echo Generating SSL resources in {0}
+
+ # Step 1
+ keytool -keystore kafka.server.keystore.jks -alias localhost -validity 1 \
+ -genkey -storepass foobar -keypass foobar \
+ -dname "CN=localhost, OU=kafka-python, O=kafka-python, L=SF, ST=CA, C=US" \
+ -ext SAN=dns:localhost
+
+ # Step 2
+ openssl genrsa -out ca-key 2048
+ openssl req -new -x509 -key ca-key -out ca-cert -days 1 \
+ -subj "/C=US/ST=CA/O=MyOrg, Inc./CN=mydomain.com"
+ keytool -keystore kafka.server.truststore.jks -alias CARoot -import \
+ -file ca-cert -storepass foobar -noprompt
+
+ # Step 3
+ keytool -keystore kafka.server.keystore.jks -alias localhost -certreq \
+ -file cert-file -storepass foobar
+ openssl x509 -req -CA ca-cert -CAkey ca-key -in cert-file -out cert-signed \
+ -days 1 -CAcreateserial -passin pass:foobar
+ keytool -keystore kafka.server.keystore.jks -alias CARoot -import \
+ -file ca-cert -storepass foobar -noprompt
+ keytool -keystore kafka.server.keystore.jks -alias localhost -import \
+ -file cert-signed -storepass foobar -noprompt
+ """.format(directory))
+
class Fixture(object):
kafka_version = os.environ.get('KAFKA_VERSION', '0.11.0.2')
scala_version = os.environ.get("SCALA_VERSION", '2.8.0')