Kubernetes

Requirements

  • Git

  • Kubernetes

  • Helm

Downloading Synthesized TDK Chart

git clone https://github.com/synthesized-io/helm-charts.git
cd helm-charts

Installing the chart

Set the following environment varaibles:

# Kunernetes namespace
export NAMESPACE="synthesized"

# You can specify your private repository here
export API_REPOSITORY="eu.gcr.io/synthesized-cloud-275014/testing-suite-api"
export FRONT_REPOSITORY="eu.gcr.io/synthesized-cloud-275014/testing-suite-front"

export API_TAG="latest"
export FRONT_TAG="latest"

# Database connection params
export SPRING_DATASOURCE_URL="<JDBC_URL>"
export SPRING_DATASOURCE_USERNAME="<JDBC_USERNAME>"
export SPRING_DATASOURCE_PASSWORD="<JDBC_PASSWORD>"

# Hostname of the Governor
export API_PUBLIC_HOST="localhost"

# Jupyter hostname is typycally a subdomain of API_PUBLIC_HOST
export JUPYTER_NOTEBOOK_PUBLIC_HOST="jupyter.localhost"

Install the chart:

helm upgrade synthesized-governor charts/governor \
  --set api.image.repository="$API_REPOSITORY" \
  --set api.image.tag="$API_TAG" \
  --set front.image.repository="$FRONT_REPOSITORY" \
  --set front.image.tag="$FRONT_TAG" \
  --set api.container.config.SPRING_DATASOURCE_URL="$SPRING_DATASOURCE_URL" \
  --set api.container.config.SPRING_DATASOURCE_USERNAME="$SPRING_DATASOURCE_USERNAME" \
  --set api.container.config.SPRING_DATASOURCE_PASSWORD="$SPRING_DATASOURCE_PASSWORD" \
  --set front.container.config.API_PUBLIC_HOST="$API_PUBLIC_HOST" \
  --set front.container.config.JUPYTER_NOTEBOOK_PUBLIC_HOST="$JUPYTER_NOTEBOOK_PUBLIC_HOST" \
  --namespace "$NAMESPACE" \
  --create-namespace \
  --install

If everything went well, you will receive a message like this:

Release "synthesized-governor" does not exist. Installing it now.
NAME: synthesized-governor
LAST DEPLOYED: Tue Oct  3 16:26:50 2023
NAMESPACE: synthesized
STATUS: deployed
REVISION: 1
TEST SUITE: None