From c6fd662d4be8bb09428f5fbf5d0fc157c0605921 Mon Sep 17 00:00:00 2001 From: Serge Bazanski Date: Thu, 1 Nov 2018 22:39:01 +0100 Subject: [PATCH] begin docker-composing --- docker/.gitignore | 1 + docker/docker-compose.yml | 9 ++++++ env.sh | 30 +++++++++++++++++++ go/pki/dev-certs/client_csr.json | 12 -------- go/pki/dev-certs/gen.sh | 10 +++++-- .../{service_csr.json => template.json} | 0 6 files changed, 47 insertions(+), 15 deletions(-) create mode 100644 docker/.gitignore create mode 100644 docker/docker-compose.yml create mode 100644 env.sh delete mode 100644 go/pki/dev-certs/client_csr.json rename go/pki/dev-certs/{service_csr.json => template.json} (100%) diff --git a/docker/.gitignore b/docker/.gitignore new file mode 100644 index 0000000..5a8ef6a --- /dev/null +++ b/docker/.gitignore @@ -0,0 +1 @@ +pki diff --git a/docker/docker-compose.yml b/docker/docker-compose.yml new file mode 100644 index 0000000..fb69186 --- /dev/null +++ b/docker/docker-compose.yml @@ -0,0 +1,9 @@ +version: '3' +services: + m6220-proxy: + build: + context: .. + dockerfile: docker/Dockerfile + command: + - m6220-proxy + - "--logtostderr" diff --git a/env.sh b/env.sh new file mode 100644 index 0000000..206ae5b --- /dev/null +++ b/env.sh @@ -0,0 +1,30 @@ +# source me to have all the nice things + +if [ "$0" == "$BASH_SOURCE" ]; then + echo "You should be sourcing this." + exit 1 +fi + +hscloud_root="$( cd "$(dirname "$BASH_SOURCE")"; pwd -P )" + +hscloud-dc() { + ( cd "$hscloud_root" && docker-compose -f "docker/docker-compose.yml" "$@" ) +} + +hscloud-pki-dev() { + ( + set -e + + cd "$hscloud_root" + rm -rf docker/pki + + cp -rv go/pki/dev-certs docker/pki + cd docker/pki + bash gen.sh m6220-proxy arista-proxy cmc-proxy topo client + ls *pem + ) +} + +echo "Now playing:" +echo " hscloud-dc - run docker-compose" +echo " hscloud-pki-dev - generate dev PKI certs" diff --git a/go/pki/dev-certs/client_csr.json b/go/pki/dev-certs/client_csr.json deleted file mode 100644 index 26fc041..0000000 --- a/go/pki/dev-certs/client_csr.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "CN": "developer.humans.svc.cluster.local", - "names": [ - { - "C": "US", - "L": "San Francisco", - "O": "Internet Widgets, Inc.", - "OU": "WWW", - "ST": "California" - } - ] -} diff --git a/go/pki/dev-certs/gen.sh b/go/pki/dev-certs/gen.sh index e09e9f3..b068731 100755 --- a/go/pki/dev-certs/gen.sh +++ b/go/pki/dev-certs/gen.sh @@ -1,7 +1,11 @@ #!/bin/sh -set -e -x +set -e test -f ca.pem || ( cfssl gencert -initca ca_csr.json | cfssljson -bare ca ) -test -f service.pem || ( cfssl gencert -ca=ca.pem -ca-key=ca-key.pem -config=ca_config.json -profile=test service_csr.json | cfssljson -bare service ) -test -f client.pem || ( cfssl gencert -ca=ca.pem -ca-key=ca-key.pem -config=ca_config.json -profile=test client_csr.json | cfssljson -bare client ) + +for crt in "$@"; do + jq ".CN |= \"${crt}.dev.svc.cluster.local\"" < template.json > service_${crt}.json + test -f ${crt}.pem || ( cfssl gencert -ca=ca.pem -ca-key=ca-key.pem -config=ca_config.json -profile=test service_${crt}.json | cfssljson -bare ${crt} ) + rm -f service_${crt}.json +done diff --git a/go/pki/dev-certs/service_csr.json b/go/pki/dev-certs/template.json similarity index 100% rename from go/pki/dev-certs/service_csr.json rename to go/pki/dev-certs/template.json