Skip to content

Commit

Permalink
5.7
Browse files Browse the repository at this point in the history
Overall improvements and 5.7 updates
  • Loading branch information
zalbiraw authored Dec 11, 2024
1 parent 9fab591 commit f0de9dd
Show file tree
Hide file tree
Showing 53 changed files with 765 additions and 199 deletions.
32 changes: 14 additions & 18 deletions .env.example
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
DASHBOARD_VERSION=v5.6
GATEWAY_VERSION=v5.6
DASHBOARD_VERSION=v5.7
GATEWAY_VERSION=v5.7
MDCB_VERSION=v2.7
PUMP_VERSION=v1.11
PORTAL_VERSION=v1.11
PORTAL_VERSION=v1.12
TYK_HELM_CHART_PATH=tyk-helm
TYK_USERNAME=default@example.com
TYK_PASSWORD=topsecretpassword
Expand All @@ -12,29 +12,25 @@ MDCB_LICENSE=
PORTAL_LICENSE=
OPERATOR_LICENSE=

TYK_WORKER_CONNECTIONSTRING=
TYK_WORKER_ORGID=
TYK_WORKER_AUTHTOKEN=
TYK_WORKER_GROUPID=
TYK_WORKER_USESSL=true
TYK_WORKER_SHARDING_ENABLED=false
TYK_WORKER_SHARDING_TAGS=
TYK_WORKER_GW_PORT=8081
TYK_WORKER_OPERATOR_CONNECTIONSTRING=
TYK_DATA_PLANE_CONNECTIONSTRING=
TYK_DATA_PLANE_ORGID=
TYK_DATA_PLANE_AUTHTOKEN=
TYK_DATA_PLANE_GROUPID=
TYK_DATA_PLANE_USESSL=true
TYK_DATA_PLANE_SHARDING_ENABLED=false
TYK_DATA_PLANE_SHARDING_TAGS=
TYK_DATA_PLANE_PORT=8081
TYK_DATA_PLANE_OPERATOR_CONNECTIONSTRING=

DATADOG_APIKEY=
DATADOG_APPKEY=
DATADOG_SITE=datadoghq.com
NEWRELIC_LICENSEKEY=
NEWRELIC_CLUSTER=minikube

INGRESS_CLASSNAME=nginx

GCP_PROJECT=
CLUSTER_LOCATION=
CLUSTER_MACHINE_TYPE=
CLUSTER_NODE_COUNT=

INGRESS_CLASSNAME=nginx

TYK_MDCB_SYNCWORKER_ENABLED=true
TYK_MDCB_SYNCWORKER_HASHKEYS=true
TYK_GW_SLAVEOPTIONS_SYNCHRONISERENABLED=true
8 changes: 4 additions & 4 deletions .github/workflows/aks.yml
Original file line number Diff line number Diff line change
Expand Up @@ -60,10 +60,10 @@ jobs:

- name: Deploy tyk-dp
run: |
TYK_WORKER_CONNECTIONSTRING=mdcb-svc-tyk-cp-tyk-mdcb.tyk.svc:9091 \
TYK_WORKER_ORGID=$(kubectl get secrets -n tyk tyk-operator-conf -o=jsonpath="{.data.TYK_ORG}" | base64 -d) \
TYK_WORKER_AUTHTOKEN=$(kubectl get secrets -n tyk tyk-operator-conf -o=jsonpath="{.data.TYK_AUTH}" | base64 -d) \
TYK_WORKER_USESSL=false \
TYK_DATA_PLANE_CONNECTIONSTRING=mdcb-svc-tyk-cp-tyk-mdcb.tyk.svc:9091 \
TYK_DATA_PLANE_ORGID=$(kubectl get secrets -n tyk tyk-operator-conf -o=jsonpath="{.data.TYK_ORG}" | base64 -d) \
TYK_DATA_PLANE_AUTHTOKEN=$(kubectl get secrets -n tyk tyk-operator-conf -o=jsonpath="{.data.TYK_AUTH}" | base64 -d) \
TYK_DATA_PLANE_USESSL=false \
./up.sh --namespace tyk-dp tyk-dp
- name: Sleep 1 minute
Expand Down
8 changes: 4 additions & 4 deletions .github/workflows/eks.yml
Original file line number Diff line number Diff line change
Expand Up @@ -62,10 +62,10 @@ jobs:

- name: Deploy tyk-dp
run: |
TYK_WORKER_CONNECTIONSTRING=mdcb-svc-tyk-cp-tyk-mdcb.tyk.svc:9091 \
TYK_WORKER_ORGID=$(kubectl get secrets -n tyk tyk-operator-conf -o=jsonpath="{.data.TYK_ORG}" | base64 -d) \
TYK_WORKER_AUTHTOKEN=$(kubectl get secrets -n tyk tyk-operator-conf -o=jsonpath="{.data.TYK_AUTH}" | base64 -d) \
TYK_WORKER_USESSL=false \
TYK_DATA_PLANE_CONNECTIONSTRING=mdcb-svc-tyk-cp-tyk-mdcb.tyk.svc:9091 \
TYK_DATA_PLANE_ORGID=$(kubectl get secrets -n tyk tyk-operator-conf -o=jsonpath="{.data.TYK_ORG}" | base64 -d) \
TYK_DATA_PLANE_AUTHTOKEN=$(kubectl get secrets -n tyk tyk-operator-conf -o=jsonpath="{.data.TYK_AUTH}" | base64 -d) \
TYK_DATA_PLANE_USESSL=false \
./up.sh --namespace tyk-dp tyk-dp
- name: Sleep 1 minute
Expand Down
8 changes: 4 additions & 4 deletions .github/workflows/gke.yml
Original file line number Diff line number Diff line change
Expand Up @@ -67,10 +67,10 @@ jobs:

- name: Deploy tyk-dp
run: |
TYK_WORKER_CONNECTIONSTRING=mdcb-svc-tyk-cp-tyk-mdcb.tyk.svc:9091 \
TYK_WORKER_ORGID=$(kubectl get secrets -n tyk tyk-operator-conf -o=jsonpath="{.data.TYK_ORG}" | base64 -d) \
TYK_WORKER_AUTHTOKEN=$(kubectl get secrets -n tyk tyk-operator-conf -o=jsonpath="{.data.TYK_AUTH}" | base64 -d) \
TYK_WORKER_USESSL=false \
TYK_DATA_PLANE_CONNECTIONSTRING=mdcb-svc-tyk-cp-tyk-mdcb.tyk.svc:9091 \
TYK_DATA_PLANE_ORGID=$(kubectl get secrets -n tyk tyk-operator-conf -o=jsonpath="{.data.TYK_ORG}" | base64 -d) \
TYK_DATA_PLANE_AUTHTOKEN=$(kubectl get secrets -n tyk tyk-operator-conf -o=jsonpath="{.data.TYK_AUTH}" | base64 -d) \
TYK_DATA_PLANE_USESSL=false \
./up.sh --namespace tyk-dp tyk-dp
- name: Sleep 1 minute
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/storage.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ env:
TIMEOUT: 30

jobs:
tyk-redis:
tyk-storage:
runs-on: ubuntu-latest
strategy:
fail-fast: false
Expand Down Expand Up @@ -44,7 +44,7 @@ jobs:
- name: Copy .env file
run: cp .env.example .env

- name: Deploy tyk-stack with ${{ matrix.redis }}
- name: Deploy tyk-stack with ${{ matrix.storage }}
uses: nick-invision/retry@v3
with:
max_attempts: ${{ env.MAX_ATTEMPTS }}
Expand Down
3 changes: 3 additions & 0 deletions .github/workflows/tyk-cp.yml
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,7 @@ jobs:
- elasticsearch-kibana
- jaeger
- k6
- kafka
- keycloak
- keycloak-sso
- keycloak-dcr
Expand All @@ -36,6 +37,8 @@ jobs:
- operator-graphql
- operator-httpbin
- operator-jwt-hmac
- operator-kafka
- operator-kafka-avro
- operator-udg
- portal
- prometheus
Expand Down
27 changes: 15 additions & 12 deletions .github/workflows/tyk-dp.yml
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,7 @@ jobs:
- elasticsearch-kibana
- jaeger
- k6
- kafka
- keycloak
- keycloak-jwt
- newrelic
Expand All @@ -34,6 +35,8 @@ jobs:
- operator-graphql
- operator-httpbin
- operator-jwt-hmac
- operator-kafka
- operator-kafka-avro
- operator-udg
- prometheus
- prometheus-grafana
Expand Down Expand Up @@ -67,10 +70,10 @@ jobs:
max_attempts: ${{ env.MAX_ATTEMPTS }}
timeout_minutes: ${{ env.TIMEOUT }}
command: |
TYK_WORKER_CONNECTIONSTRING="${{ secrets.TYK_WORKER_CONNECTIONSTRING }}" \
TYK_WORKER_ORGID="${{ secrets.TYK_WORKER_ORGID }}" \
TYK_WORKER_AUTHTOKEN="${{ secrets.TYK_WORKER_AUTHTOKEN }}" \
TYK_WORKER_OPERATOR_CONNECTIONSTRING="${{ secrets.TYK_WORKER_OPERATOR_CONNECTIONSTRING }}" \
TYK_DATA_PLANE_CONNECTIONSTRING="${{ secrets.TYK_DATA_PLANE_CONNECTIONSTRING }}" \
TYK_DATA_PLANE_ORGID="${{ secrets.TYK_DATA_PLANE_ORGID }}" \
TYK_DATA_PLANE_AUTHTOKEN="${{ secrets.TYK_DATA_PLANE_AUTHTOKEN }}" \
TYK_DATA_PLANE_OPERATOR_CONNECTIONSTRING="${{ secrets.TYK_DATA_PLANE_OPERATOR_CONNECTIONSTRING }}" \
OPERATOR_LICENSE="${{ secrets.DASH_LICENSE }}" \
DATADOG_APIKEY="${{ secrets.DATADOG_APIKEY }}" \
DATADOG_APPKEY="${{ secrets.DATADOG_APPKEY }}" \
Expand All @@ -90,10 +93,10 @@ jobs:
max_attempts: ${{ env.MAX_ATTEMPTS }}
timeout_minutes: ${{ env.TIMEOUT }}
on_retry_command: |
TYK_WORKER_CONNECTIONSTRING="${{ secrets.TYK_WORKER_CONNECTIONSTRING }}" \
TYK_WORKER_ORGID="${{ secrets.TYK_WORKER_ORGID }}" \
TYK_WORKER_AUTHTOKEN="${{ secrets.TYK_WORKER_AUTHTOKEN }}" \
TYK_WORKER_OPERATOR_CONNECTIONSTRING="${{ secrets.TYK_WORKER_OPERATOR_CONNECTIONSTRING }}" \
TYK_DATA_PLANE_CONNECTIONSTRING="${{ secrets.TYK_DATA_PLANE_CONNECTIONSTRING }}" \
TYK_DATA_PLANE_ORGID="${{ secrets.TYK_DATA_PLANE_ORGID }}" \
TYK_DATA_PLANE_AUTHTOKEN="${{ secrets.TYK_DATA_PLANE_AUTHTOKEN }}" \
TYK_DATA_PLANE_OPERATOR_CONNECTIONSTRING="${{ secrets.TYK_DATA_PLANE_OPERATOR_CONNECTIONSTRING }}" \
OPERATOR_LICENSE="${{ secrets.DASH_LICENSE }}" \
DATADOG_APIKEY="${{ secrets.DATADOG_APIKEY }}" \
DATADOG_APPKEY="${{ secrets.DATADOG_APPKEY }}" \
Expand All @@ -111,10 +114,10 @@ jobs:
max_attempts: ${{ env.MAX_ATTEMPTS }}
timeout_minutes: ${{ env.TIMEOUT }}
on_retry_command: |
TYK_WORKER_CONNECTIONSTRING="${{ secrets.TYK_WORKER_CONNECTIONSTRING }}" \
TYK_WORKER_ORGID="${{ secrets.TYK_WORKER_ORGID }}" \
TYK_WORKER_AUTHTOKEN="${{ secrets.TYK_WORKER_AUTHTOKEN }}" \
TYK_WORKER_OPERATOR_CONNECTIONSTRING="${{ secrets.TYK_WORKER_OPERATOR_CONNECTIONSTRING }}" \
TYK_DATA_PLANE_CONNECTIONSTRING="${{ secrets.TYK_DATA_PLANE_CONNECTIONSTRING }}" \
TYK_DATA_PLANE_ORGID="${{ secrets.TYK_DATA_PLANE_ORGID }}" \
TYK_DATA_PLANE_AUTHTOKEN="${{ secrets.TYK_DATA_PLANE_AUTHTOKEN }}" \
TYK_DATA_PLANE_OPERATOR_CONNECTIONSTRING="${{ secrets.TYK_DATA_PLANE_OPERATOR_CONNECTIONSTRING }}" \
OPERATOR_LICENSE="${{ secrets.DASH_LICENSE }}" \
DATADOG_APIKEY="${{ secrets.DATADOG_APIKEY }}" \
DATADOG_APPKEY="${{ secrets.DATADOG_APPKEY }}" \
Expand Down
3 changes: 3 additions & 0 deletions .github/workflows/tyk-stack.yml
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,7 @@ jobs:
- elasticsearch-kibana
- jaeger
- k6
- kafka
- keycloak
- keycloak-sso
- keycloak-dcr
Expand All @@ -36,6 +37,8 @@ jobs:
- operator-graphql
- operator-httpbin
- operator-jwt-hmac
- operator-kafka
- operator-kafka-avro
- operator-udg
- portal
- prometheus
Expand Down
60 changes: 30 additions & 30 deletions docs/CUSTOMIZATION.md
Original file line number Diff line number Diff line change
Expand Up @@ -21,33 +21,33 @@ and it will give errors if something is missing.
You can also add or change any Tyk environment variables in the `.env` file,
and they will be mapped to the respective `extraEnvs` section in the helm charts.

| Variable | Default | Comments |
|--------------------------------------|:---------------------:|-----------------------------------------------------------------------------------------------------------------|
| DASHBOARD_VERSION | `v5.6` | Dashboard version |
| GATEWAY_VERSION | `v5.6` | Gateway version |
| MDCB_VERSION | `v2.7` | MDCB version |
| PUMP_VERSION | `v1.11` | Pump version |
| PORTAL_VERSION | `v1.11` | Portal version |
| TYK_HELM_CHART_PATH | `tyk-helm` | Path to charts, can be a local directory or a helm repo |
| TYK_USERNAME | `default@example.com` | Default password for all the services deployed |
| TYK_PASSWORD | `topsecretpassword` | Default password for all the services deployed |
| LICENSE | | Dashboard license |
| MDCB_LICENSE | | MDCB license |
| PORTAL_LICENSE | | Portal license |
| OPERATOR_LICENSE | | Portal license |
| TYK_WORKER_CONNECTIONSTRING | | MDCB URL for worker connection |
| TYK_WORKER_ORGID | | Org ID of dashboard user |
| TYK_WORKER_AUTHTOKEN | | Auth token of dashboard user |
| TYK_WORKER_USESSL | `true` | Set to `true` when the MDCB is serving on a TLS connection |
| TYK_WORKER_SHARDING_ENABLED | `false` | Set to `true` to enable API Sharding |
| TYK_WORKER_SHARDING_TAGS | | API Gateway segmentation tags |
| TYK_WORKER_GW_PORT | `8081` | Set the gateway service port to use |
| TYK_WORKER_OPERATOR_CONNECTIONSTRING | | Set the dashboard URL for the operator to be able to manage APIs and Policies |
| DATADOG_APIKEY | | Datadog API key |
| DATADOG_APPKEY | | Datadog Application key. This is used to create a dashboard and create a pipeline for the Tyk logs |
| DATADOG_SITE | `datadoghq.com` | Datadog site. Change to `datadoghq.eu` if using the European site |
| GCP_PROJECT | | The GCP project for terraform authentication on GCP |
| CLUSTER_LOCATION | | Cluster location that will be created on AKS, EKS, or GKE |
| CLUSTER_MACHINE_TYPE | | Machine type for the cluster that will be created on AKS, EKS, or GKE |
| CLUSTER_NODE_COUNT | | Number of nodes for the cluster that will be created on AKS, EKS, or GKE |
| INGRESS_CLASSNAME | `nginx` | The ingress classname to be used to associate the k8s ingress objects with the ingress controller/load balancer |
| Variable | Default | Comments |
|------------------------------------------|:---------------------:|-----------------------------------------------------------------------------------------------------------------|
| DASHBOARD_VERSION | `v5.7` | Dashboard version |
| GATEWAY_VERSION | `v5.7` | Gateway version |
| MDCB_VERSION | `v2.7` | MDCB version |
| PUMP_VERSION | `v1.11` | Pump version |
| PORTAL_VERSION | `v1.12` | Portal version |
| TYK_HELM_CHART_PATH | `tyk-helm` | Path to charts, can be a local directory or a helm repo |
| TYK_USERNAME | `default@example.com` | Default password for all the services deployed |
| TYK_PASSWORD | `topsecretpassword` | Default password for all the services deployed |
| LICENSE | | Dashboard license |
| MDCB_LICENSE | | MDCB license |
| PORTAL_LICENSE | | Portal license |
| OPERATOR_LICENSE | | Portal license |
| TYK_DATA_PLANE_CONNECTIONSTRING | | MDCB URL for worker connection |
| TYK_DATA_PLANE_ORGID | | Org ID of dashboard user |
| TYK_DATA_PLANE_AUTHTOKEN | | Auth token of dashboard user |
| TYK_DATA_PLANE_USESSL | `true` | Set to `true` when the MDCB is serving on a TLS connection |
| TYK_DATA_PLANE_SHARDING_ENABLED | `false` | Set to `true` to enable API Sharding |
| TYK_DATA_PLANE_SHARDING_TAGS | | API Gateway segmentation tags |
| TYK_DATA_PLANE_PORT | `8081` | Set the gateway service port to use |
| TYK_DATA_PLANE_OPERATOR_CONNECTIONSTRING | | Set the dashboard URL for the operator to be able to manage APIs and Policies |
| DATADOG_APIKEY | | Datadog API key |
| DATADOG_APPKEY | | Datadog Application key. This is used to create a dashboard and create a pipeline for the Tyk logs |
| DATADOG_SITE | `datadoghq.com` | Datadog site. Change to `datadoghq.eu` if using the European site |
| GCP_PROJECT | | The GCP project for terraform authentication on GCP |
| CLUSTER_LOCATION | | Cluster location that will be created on AKS, EKS, or GKE |
| CLUSTER_MACHINE_TYPE | | Machine type for the cluster that will be created on AKS, EKS, or GKE |
| CLUSTER_NODE_COUNT | | Number of nodes for the cluster that will be created on AKS, EKS, or GKE |
| INGRESS_CLASSNAME | `nginx` | The ingress classname to be used to associate the k8s ingress objects with the ingress controller/load balancer |
Loading

0 comments on commit f0de9dd

Please # to comment.