Skip to content

Commit

Permalink
merge main
Browse files Browse the repository at this point in the history
  • Loading branch information
ypoplavs committed Nov 6, 2024
2 parents ef7a2fc + 6334f29 commit 32fc821
Show file tree
Hide file tree
Showing 45 changed files with 400 additions and 77 deletions.
Original file line number Diff line number Diff line change
@@ -1,11 +1,8 @@
helm:
parameters:
- name: api.tls.serveHTTPS
value: "false"
forcestring: false
- name: image.name
value: docker.io/kubeshop/testkube-cloud-api
forcestring: true
- name: image.tag
value: 1.10.75-dev-1f883f57
value: 1.10.76-dev-d6c71555
forcestring: true
4 changes: 2 additions & 2 deletions charts/testkube-cloud-api/Chart.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,8 @@ apiVersion: v2
name: testkube-cloud-api
description: A Helm chart for Testkube Cloud API
type: application
version: 1.99.0
appVersion: 1.10.74
version: 1.103.0
appVersion: 1.10.75
maintainers:
- name: testkube
url: https://testkube.io
Expand Down
12 changes: 9 additions & 3 deletions charts/testkube-cloud-api/README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# testkube-cloud-api

![Version: 1.99.0](https://img.shields.io/badge/Version-1.99.0-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 1.10.74](https://img.shields.io/badge/AppVersion-1.10.74-informational?style=flat-square)
![Version: 1.103.0](https://img.shields.io/badge/Version-1.103.0-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 1.10.75](https://img.shields.io/badge/AppVersion-1.10.75-informational?style=flat-square)

A Helm chart for Testkube Cloud API

Expand Down Expand Up @@ -128,6 +128,7 @@ A Helm chart for Testkube Cloud API
| fullnameOverride | string | `""` | |
| global.certManager.issuerRef | string | `""` | Certificate Issuer ref (only used if `provider` is set to `cert-manager`) |
| global.certificateProvider | string | `""` | TLS provider (possible values: "", "cert-manager") |
| global.containerSecurityContext | object | `{}` | Global security Context for all containers |
| global.customCaSecretKey | string | `"ca.crt"` | Custom CA to use as a trusted CA during TLS connections. Specify a key for the secret specified under customCaSecretRef. |
| global.customCaSecretRef | string | `""` | Custom CA to use as a trusted CA during TLS connections. Specify a secret with the PEM encoded CA under the key specified by customCaSecretKey. |
| global.dex.issuer | string | `""` | Global Dex issuer url |
Expand All @@ -149,11 +150,15 @@ A Helm chart for Testkube Cloud API
| global.mongo.dsnSecretRef | string | `""` | Mongo DSN connection string secret ref (secret must contain key MONGO_DSN) (default is `mongo-dsn`) |
| global.mongo.readPreference | string | `""` | Mongo read preference (primary|primaryPreferred|secondary|secondaryPreferred|nearest) |
| global.nats.uri | string | `""` | NATS URI |
| global.podSecurityContext | object | `{}` | Global security Context for all pods |
| global.restApiSubdomain | string | `"api"` | REST API subdomain which get prepended to the domain |
| global.storage.accessKeyId | string | `""` | S3 Access Key ID |
| global.storage.credsSecretRef | string | `""` | Credentials secret ref (secret should contain keys: root-user, root-password, token) (default is `testkube-cloud-minio-secret`) |
| global.storage.endpoint | string | `""` | Endpoint to a S3 compatible storage service (without protocol) |
| global.storage.outputsBucket | string | `""` | S3 bucket in which Test Artifacts & Logs will be stored |
| global.storage.public | object | `{"endpoint":"","secure":null}` | Optional public address of the storage, that can be accessed by user |
| global.storage.public.endpoint | string | `""` | Public endpoint to the storage service, that can be accessed by user |
| global.storage.public.secure | string | `nil` | Toggle whether to use HTTPS when connecting to the public S3 server |
| global.storage.region | string | `""` | S3 region |
| global.storage.secretAccessKey | string | `""` | S3 Secret Access Key |
| global.storage.secure | string | `nil` | Toggle whether to use HTTPS when connecting to the S3 server |
Expand All @@ -171,10 +176,11 @@ A Helm chart for Testkube Cloud API
| image.pullPolicy | string | `"IfNotPresent"` | |
| image.registry | string | `""` | If defined, it will prepend the registry to the image name, if not, default docker.io will be prepended |
| image.repository | string | `"kubeshop/testkube-cloud-api"` | |
| image.tag | string | `"1.10.74"` | |
| image.tag | string | `"1.10.75"` | |
| imagePullSecrets | list | `[]` | |
| ingress.className | string | `"nginx"` | Common Ingress class name (NGINX is the only officially supported ingress controller and should not be changed) |
| init.enabled | bool | `false` | Toggle whether to enable the dependency check containers |
| init.mongo.containerSecurityContext | object | `{}` | |
| init.mongo.image.digest | string | `""` | MongoSH image digest |
| init.mongo.image.pullPolicy | string | `"IfNotPresent"` | MongoSH image pull policy |
| init.mongo.image.registry | string | `"docker.io"` | MongoSH image registry |
Expand Down Expand Up @@ -202,7 +208,7 @@ A Helm chart for Testkube Cloud API
| restIngress.enabled | bool | `true` | Toggle whether to enable the REST API Ingress |
| restIngress.host | string | `""` | Hostname for which to create rules and TLS certificates (if omitted, the host will be generated using the global subdomain and `domain` values) |
| restIngress.labels | object | `{}` | Additional labels to add to the REST Ingress resource |
| securityContext | object | `{"readOnlyRootFilesystem":true}` | Security Context for app container |
| securityContext | object | `{"readOnlyRootFilesystem":true}` | Container Security Context |
| service.annotations | object | `{}` | Additional annotations to add to the Service resource |
| service.grpcPort | int | `8089` | gRPC/Agent API port |
| service.labels | object | `{}` | Additional labels to add to the Service resource |
Expand Down
35 changes: 34 additions & 1 deletion charts/testkube-cloud-api/templates/_helpers.tpl
Original file line number Diff line number Diff line change
Expand Up @@ -155,4 +155,37 @@ TODO: Implement this using dict and reuse the same for each image
{{- end -}}

{{- printf "%s/%s%s%s" $registryName $repositoryName $separator $tag -}}
{{- end -}}
{{- end -}}

{{/*
Define podSecurityContext
*/}}
{{- define "testkube-cloud-api.podSecurityContext" -}}
{{- if .Values.global.podSecurityContext }}
{{ toYaml .Values.global.podSecurityContext }}
{{- else }}
{{ toYaml .Values.podSecurityContext }}
{{- end }}
{{- end }}

{{/*
Define containerSecurityContext
*/}}
{{- define "testkube-cloud-api.containerSecurityContext" -}}
{{- if .Values.global.containerSecurityContext }}
{{- toYaml .Values.global.containerSecurityContext}}
{{- else }}
{{- toYaml .Values.securityContext }}
{{- end }}
{{- end }}

{{/*
Define containerSecurityContext for Init Container
*/}}
{{- define "init-wait-for-mongo.containerSecurityContext" -}}
{{- if .Values.global.containerSecurityContext }}
{{- toYaml .Values.global.containerSecurityContext}}
{{- else }}
{{- toYaml .Values.init.mongo.containerSecurityContext }}
{{- end }}
{{- end }}
12 changes: 10 additions & 2 deletions charts/testkube-cloud-api/templates/deployment.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -29,12 +29,14 @@ spec:
{{- end }}
serviceAccountName: {{ include "testkube-cloud-api.serviceAccountName" . }}
securityContext:
{{- toYaml .Values.podSecurityContext | nindent 8 }}
{{ include "testkube-cloud-api.podSecurityContext" . | trim }}
{{- if .Values.init.enabled }}
initContainers:
- name: wait-for-mongo
image: {{ include "testkube-cloud-api.init-mongo-image" . }}
imagePullPolicy: {{ .Values.init.mongo.image.pullPolicy }}
securityContext:
{{ include "init-wait-for-mongo.containerSecurityContext" . | trim }}
command: ["/bin/sh", "-c"]
args:
- |
Expand All @@ -57,7 +59,7 @@ spec:
containers:
- name: {{ .Chart.Name }}
securityContext:
{{- toYaml .Values.securityContext | nindent 12 }}
{{ include "testkube-cloud-api.containerSecurityContext" . | trim }}
image: {{ include "testkube-api.image" . }}
imagePullPolicy: {{ .Values.global.imagePullPolicy | default .Values.image.pullPolicy }}
env:
Expand Down Expand Up @@ -385,6 +387,12 @@ spec:
value: "{{ .Values.api.minio.signing.hostname }}"
- name: "AGENT_STORAGE_SSL"
value: "{{ .Values.api.minio.signing.secure }}"
{{- if .Values.global.storage.public.endpoint }}
- name: "PUBLIC_STORAGE_HOSTNAME"
value: "{{ .Values.global.storage.public.endpoint }}"
- name: "PUBLIC_STORAGE_SSL"
value: "{{ .Values.global.storage.public.secure | default "false" }}"
{{- end }}
{{- if .Values.api.minio.certSecret.enabled }}
- name: "MINIO_CERT_FILE"
value: "{{ .Values.api.minio.certSecret.baseMountPath }}/{{ .Values.api.minio.certSecret.certFile }}"
Expand Down
6 changes: 5 additions & 1 deletion charts/testkube-cloud-api/templates/migrations-job.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -33,11 +33,13 @@ spec:
{{- end }}
serviceAccountName: {{ include "testkube-cloud-api.serviceAccountName" . }}
securityContext:
{{- toYaml .Values.podSecurityContext | nindent 8 }}
{{ include "testkube-cloud-api.podSecurityContext" . | trim }}
{{- if .Values.init.enabled }}
initContainers:
- name: wait-for-mongo
image: {{ include "testkube-cloud-api.init-mongo-image" . }}
securityContext:
{{ include "init-wait-for-mongo.containerSecurityContext" . | trim}}
command: ["/bin/sh", "-c"]
args:
- |
Expand All @@ -60,6 +62,8 @@ spec:
containers:
- name: migrations
image: {{ include "testkube-api.image" . }}
securityContext:
{{ include "testkube-cloud-api.containerSecurityContext" . | trim }}
args: ["migrate"]
env:
- name: ENTERPRISE_MODE
Expand Down
17 changes: 14 additions & 3 deletions charts/testkube-cloud-api/values.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -84,16 +84,26 @@ global:
token: ""
# -- Credentials secret ref (secret should contain keys: root-user, root-password, token) (default is `testkube-cloud-minio-secret`)
credsSecretRef: ""
# -- Optional public address of the storage, that can be accessed by user
public:
# -- Public endpoint to the storage service, that can be accessed by user
endpoint: ""
# -- Toggle whether to use HTTPS when connecting to the public S3 server
secure: null
tls: {}
# -- Toggle whether to globally skip certificate verification
#skipVerify: false
# -- Global security Context for all containers
containerSecurityContext: {}
# -- Global security Context for all pods
podSecurityContext: {}
replicaCount: 1
image:
# -- If defined, it will prepend the registry to the image name, if not, default docker.io will be prepended
registry: ""
repository: kubeshop/testkube-cloud-api
pullPolicy: IfNotPresent
tag: "1.10.74"
tag: "1.10.75"
imagePullSecrets: []
nameOverride: ""
fullnameOverride: ""
Expand Down Expand Up @@ -124,6 +134,8 @@ init:
pullPolicy: IfNotPresent
# -- MongoSH image digest
digest: ""
# -- Init container Security Context
containerSecurityContext: {}
analytics:
segmentio:
# -- Toggle whether to enable Segment.io analytics
Expand Down Expand Up @@ -354,8 +366,7 @@ podAnnotations: {}
# -- Pod Security Context
podSecurityContext: {}
# fsGroup: 2000

# -- Security Context for app container
# -- Container Security Context
securityContext:
readOnlyRootFilesystem: true
service:
Expand Down
2 changes: 1 addition & 1 deletion charts/testkube-cloud-ui/Chart.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ apiVersion: v2
name: testkube-cloud-ui
description: A Helm chart for Testkube Cloud UI
type: application
version: 1.69.0
version: 1.71.0
appVersion: 2.7.0
maintainers:
- name: testkube
Expand Down
5 changes: 4 additions & 1 deletion charts/testkube-cloud-ui/README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# testkube-cloud-ui

![Version: 1.69.0](https://img.shields.io/badge/Version-1.69.0-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 2.7.0](https://img.shields.io/badge/AppVersion-2.7.0-informational?style=flat-square)
![Version: 1.71.0](https://img.shields.io/badge/Version-1.71.0-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 2.7.0](https://img.shields.io/badge/AppVersion-2.7.0-informational?style=flat-square)

A Helm chart for Testkube Cloud UI

Expand Down Expand Up @@ -34,12 +34,14 @@ A Helm chart for Testkube Cloud UI
| fullnameOverride | string | `""` | |
| global.certManager.issuerRef | string | `""` | Certificate Issuer ref (only used if `provider` is set to `cert-manager`) |
| global.certificateProvider | string | `""` | TLS provider (possible values: "", "cert-manager") |
| global.containerSecurityContext | object | `{}` | Global security Context for all containers |
| global.domain | string | `""` | Domain under which to create Ingress rules |
| global.enterpriseMode | bool | `false` | Toggle whether UI is installed in Enterprise mode |
| global.imagePullSecrets | list | `[]` | Global image pull secrets (provided usually by a parent chart like testkube-enterprise) |
| global.imageRegistry | string | `""` | Global image registry to be prepended for to all images (usually defined in parent chart) |
| global.ingress.enabled | bool | `true` | Global toggle whether to create Ingress resources |
| global.labels | object | `{}` | Common labels which will be added to all resources |
| global.podSecurityContext | object | `{}` | Global security Context for all pods |
| global.redirectSubdomain | string | `"app"` | Different UI subdomain which gets prepended to the domain. May be used for the redirect from your actual uiSubdomain endpoint. Works is ingressRedirect option is enabled. |
| global.restApiSubdomain | string | `"api"` | REST API subdomain |
| global.uiSubdomain | string | `"cloud"` | UI subdomain which get prepended to the domain |
Expand Down Expand Up @@ -83,6 +85,7 @@ A Helm chart for Testkube Cloud UI
| ui.rootRoute | string | `""` | The URL on which UI is served |
| ui.segment.secretRef | string | `""` | Segment.io write key secret ref (secret must contain key SEGMENTIO_WRITE_KEY_UI) (default is `testkube-cloud-analytics-secret`) |
| ui.segment.writeKey | string | `""` | Segment.io write key (overriden by `secretRef` if set) |
| ui.wsServerEndpoint | string | `""` | WebSocket Server endpoint URL |

----------------------------------------------
Autogenerated from chart metadata using [helm-docs v1.11.0](https://github.com/norwoodj/helm-docs/releases/v1.11.0)
24 changes: 23 additions & 1 deletion charts/testkube-cloud-ui/templates/_helpers.tpl
Original file line number Diff line number Diff line change
Expand Up @@ -97,4 +97,26 @@ Define image
{{- else -}}
{{- printf "%s/%s%s%s" $registryName $repositoryName $separator $tag -}}
{{- end -}}
{{- end -}}
{{- end -}}

{{/*
Define podSecurityContext
*/}}
{{- define "testkube-cloud-ui.podSecurityContext" -}}
{{- if .Values.global.podSecurityContext }}
{{ toYaml .Values.global.podSecurityContext }}
{{- else }}
{{ toYaml .Values.podSecurityContext }}
{{- end }}
{{- end }}

{{/*
Define containerSecurityContext
*/}}
{{- define "testkube-cloud-ui.containerSecurityContext" -}}
{{- if .Values.global.containerSecurityContext }}
{{- toYaml .Values.global.containerSecurityContext}}
{{- else }}
{{- toYaml .Values.securityContext }}
{{- end }}
{{- end }}
8 changes: 6 additions & 2 deletions charts/testkube-cloud-ui/templates/deployment.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -29,11 +29,11 @@ spec:
{{- end }}
serviceAccountName: {{ include "testkube-cloud-ui.serviceAccountName" . }}
securityContext:
{{- toYaml .Values.podSecurityContext | nindent 8 }}
{{ include "testkube-cloud-ui.podSecurityContext" . | trim }}
containers:
- name: {{ .Chart.Name }}
securityContext:
{{- toYaml .Values.securityContext | nindent 12 }}
{{ include "testkube-cloud-ui.containerSecurityContext" . | trim }}
image: {{ include "testkube-dashboard.image" . }}
imagePullPolicy: {{ .Values.global.imagePullPolicy | default .Values.image.pullPolicy }}
ports:
Expand All @@ -43,6 +43,10 @@ spec:
env:
- name: REACT_APP_API_SERVER_ENDPOINT
value: {{ if .Values.ui.apiServerEndpoint}}{{ .Values.ui.apiServerEndpoint }}{{ else }}https://{{ .Values.global.restApiSubdomain }}.{{ .Values.global.domain }}{{ end }}
{{- if .Values.ui.wsServerEndpoint }}
- name: REACT_APP_WS_SERVER_ENDPOINT
value: {{ .Values.ui.wsServerEndpoint }}
{{- end }}
- name: REACT_APP_API_ROOT_ROUTE
value: {{ if .Values.ui.rootRoute}}{{ tpl .Values.ui.rootRoute $ }}{{ else }}https://{{ .Values.global.uiSubdomain }}.{{ .Values.global.domain }}{{ end }}
{{- if .Values.ui.authStrategy }}
Expand Down
7 changes: 6 additions & 1 deletion charts/testkube-cloud-ui/values.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,10 @@ global:
enabled: true
# -- Common labels which will be added to all resources
labels: {}
# -- Global security Context for all containers
containerSecurityContext: {}
# -- Global security Context for all pods
podSecurityContext: {}
replicaCount: 1
sentry:
# -- Toggle whether to enable Sentry.io error reporting
Expand All @@ -48,6 +52,8 @@ fullnameOverride: ""
ui:
# -- API Server endpoint URL
apiServerEndpoint: ""
# -- WebSocket Server endpoint URL
wsServerEndpoint: ""
# -- The URL on which UI is served
rootRoute: ""
# -- Auth strategy to use (possible values: "" (default), "gitlab", "github"), setting to "" enables all auth strategies
Expand Down Expand Up @@ -78,7 +84,6 @@ podAnnotations: {}
# -- Pod Security Context
podSecurityContext: {}
# fsGroup: 2000

# -- Container Security Context
securityContext:
readOnlyRootFilesystem: true
Expand Down
14 changes: 7 additions & 7 deletions charts/testkube-enterprise/Chart.lock
Original file line number Diff line number Diff line change
Expand Up @@ -4,27 +4,27 @@ dependencies:
version: 2.13.3
- name: testkube-cloud-api
repository: file://../testkube-cloud-api
version: 1.99.0
version: 1.103.0
- name: testkube-cloud-ui
repository: file://../testkube-cloud-ui
version: 1.69.0
version: 1.71.0
- name: testkube-worker-service
repository: file://../testkube-worker-service
version: 1.44.0
version: 1.45.0
- name: testkube
repository: https://kubeshop.github.io/helm-charts
version: 2.1.75
- name: dex
repository: file://./charts/dex
version: 0.19.1-3
version: 0.19.1-4
- name: mongodb
repository: https://charts.bitnami.com/bitnami
version: 15.6.16
- name: nats
repository: file://./charts/nats
version: 1.2.6-1
version: 1.2.6-2
- name: minio
repository: https://charts.bitnami.com/bitnami
version: 14.7.0
digest: sha256:c36445693bd3fc5818dade35194442d5e682dd78cf8360c823e026b5fac36a42
generated: "2024-11-05T12:18:32.940978+01:00"
digest: sha256:7e56410d65f46a0f40ea2d90f990159c298b7744309e3594d15d62ac73e883fe
generated: "2024-11-06T13:37:01.958610182Z"
Loading

0 comments on commit 32fc821

Please sign in to comment.