diff --git a/examples/kubernetes/guestbook-controller.yaml b/examples/kubernetes/guestbook-controller-template.yaml similarity index 86% rename from examples/kubernetes/guestbook-controller.yaml rename to examples/kubernetes/guestbook-controller-template.yaml index 308dbd7ef46..79f8a22b7a6 100644 --- a/examples/kubernetes/guestbook-controller.yaml +++ b/examples/kubernetes/guestbook-controller-template.yaml @@ -26,3 +26,4 @@ spec: limits: memory: "128Mi" cpu: "100m" + args: ["--port", "{{port}}", "--cell", "{{cell}}", "--vtgate_port", "{{vtgate_port}}"] diff --git a/examples/kubernetes/guestbook-down.sh b/examples/kubernetes/guestbook-down.sh index 81cbe54dc52..045229dee75 100755 --- a/examples/kubernetes/guestbook-down.sh +++ b/examples/kubernetes/guestbook-down.sh @@ -2,8 +2,6 @@ # This is an example script that stops guestbook. -set -e - script_root=`dirname "${BASH_SOURCE}"` source $script_root/env.sh diff --git a/examples/kubernetes/guestbook-up.sh b/examples/kubernetes/guestbook-up.sh index b280764d5f9..e962ae766a6 100755 --- a/examples/kubernetes/guestbook-up.sh +++ b/examples/kubernetes/guestbook-up.sh @@ -4,11 +4,20 @@ set -e +port=${GUESTBOOK_PORT:-8080} +cell=${GUESTBOOK_CELL:-"test"} +vtgate_port=${VTGATE_PORT:-15991} + script_root=`dirname "${BASH_SOURCE}"` source $script_root/env.sh echo "Creating guestbook service..." $KUBECTL create --namespace=$VITESS_NAME -f guestbook-service.yaml +sed_script="" +for var in port cell vtgate_port; do + sed_script+="s,{{$var}},${!var},g;" +done + echo "Creating guestbook replicationcontroller..." -$KUBECTL create --namespace=$VITESS_NAME -f guestbook-controller.yaml +sed -e "$sed_script" guestbook-controller-template.yaml | $KUBECTL create --namespace=$VITESS_NAME -f - diff --git a/examples/kubernetes/guestbook/main.py b/examples/kubernetes/guestbook/main.py index 8038b58ceee..b9b3daaef6d 100644 --- a/examples/kubernetes/guestbook/main.py +++ b/examples/kubernetes/guestbook/main.py @@ -1,5 +1,6 @@ """Main python file.""" +import argparse import os import time import json @@ -77,13 +78,21 @@ def add_entry(page, value): def env(): return json.dumps(dict(os.environ)) + if __name__ == '__main__': - timeout = 10 # connect timeout in seconds + parser = argparse.ArgumentParser(description='Run guestbook app') + parser.add_argument('--port', help='Port', default=8080, type=int) + parser.add_argument('--cell', help='Cell', default='test', type=str) + parser.add_argument( + '--timeout', help='Connect timeout (s)', default=10, type=int) + parser.add_argument( + '--vtgate_port', help='Vtgate Port', default=15991, type=int) + guestbook_args = parser.parse_args() # Get vtgate service address from Kubernetes DNS. - addr = 'vtgate-test:15991' + addr = 'vtgate-%s:%d' % (guestbook_args.cell, guestbook_args.vtgate_port) # Connect to vtgate. - conn = vtgate_client.connect('grpc', addr, timeout) + conn = vtgate_client.connect('grpc', addr, guestbook_args.timeout) - app.run(host='0.0.0.0', port=8080, debug=True) + app.run(host='0.0.0.0', port=guestbook_args.port, debug=True)