mirror of
https://github.com/gusaul/grpcox.git
synced 2024-12-27 19:30:10 +00:00
55 lines
1.3 KiB
Bash
55 lines
1.3 KiB
Bash
|
#!/bin/bash
|
||
|
|
||
|
set -e
|
||
|
|
||
|
cd "$(dirname $0)"
|
||
|
|
||
|
# Run this script to generate files used by tests.
|
||
|
|
||
|
echo "Creating protosets..."
|
||
|
protoc testing/test.proto \
|
||
|
--include_imports \
|
||
|
--descriptor_set_out=testing/test.protoset
|
||
|
|
||
|
protoc testing/example.proto \
|
||
|
--include_imports \
|
||
|
--descriptor_set_out=testing/example.protoset
|
||
|
|
||
|
echo "Creating certs for TLS testing..."
|
||
|
if ! hash certstrap 2>/dev/null; then
|
||
|
# certstrap not found: try to install it
|
||
|
go get github.com/square/certstrap
|
||
|
go install github.com/square/certstrap
|
||
|
fi
|
||
|
|
||
|
function cs() {
|
||
|
certstrap --depot-path testing/tls "$@" --passphrase ""
|
||
|
}
|
||
|
|
||
|
rm -rf testing/tls
|
||
|
|
||
|
# Create CA
|
||
|
cs init --years 10 --common-name ca
|
||
|
|
||
|
# Create client cert
|
||
|
cs request-cert --common-name client
|
||
|
cs sign client --years 10 --CA ca
|
||
|
|
||
|
# Create server cert
|
||
|
cs request-cert --common-name server --ip 127.0.0.1 --domain localhost
|
||
|
cs sign server --years 10 --CA ca
|
||
|
|
||
|
# Create another server cert for error testing
|
||
|
cs request-cert --common-name other --ip 1.2.3.4 --domain foobar.com
|
||
|
cs sign other --years 10 --CA ca
|
||
|
|
||
|
# Create another CA and client cert for more
|
||
|
# error testing
|
||
|
cs init --years 10 --common-name wrong-ca
|
||
|
cs request-cert --common-name wrong-client
|
||
|
cs sign wrong-client --years 10 --CA wrong-ca
|
||
|
|
||
|
# Create expired cert
|
||
|
cs request-cert --common-name expired --ip 127.0.0.1 --domain localhost
|
||
|
cs sign expired --years 0 --CA ca
|