xebialabsunsupported/release-assistant-helm-chart

By xebialabsunsupported

Updated 3 days ago

Helm chart for Digital.ai Release Assistant server

Helm
0

1.4K

xebialabsunsupported/release-assistant-helm-chart repository overview

Helm chart for Digital.ai Release Assistant

Prerequisites

  • Kubernetes 1.20+
  • Helm 3.2.0+

Minimal configuration for the K3D cluster

To install the chart with the release name dai-assistant:

helm dependency update .
helm install dai-assistant . -n digitalai --create-namespace

On finish of the last command you will see information about helm release.

Minimal configuration for the AWS cluster

Run helm release dai-assistant installation with creation of the namespace:

helm dependency update .
helm install dai-assistant . -n digitalai --create-namespace

On finish of the last command you will see information about helm release.

Minimal configuration for the OpenShift cluster (AWS)

Run helm release dai-assistant installation with creation of the namespace:

helm dependency update .
helm install dai-assistant . -n digitalai --create-namespace

On finish of the last command you will see information about helm release.

Uninstalling the Chart

To uninstall/delete the dai-assistant release:

helm delete dai-assistant -n digitalai

The command removes all the Kubernetes components associated with the chart and deletes the release.

To delete all resources with one command (if in the namespace is only release-assistant installed) you can delete namespace with:

kubectl delete namespace digitalai
Basic Configuration Example
ingress:
  enabled: true
  hostname: "ingress hostname, e.g. release-assistant.local"
  tls:
    enabled: true
  ingressClassName: "ingress class name, e.g. nginx"
config:
  appName: "application_name"
  appEnv: "staging"
  release:
    baseUrl: "url_to_release_server"
  releaseMcp:
    serverUrl: "url_to_release_mcp_server"
  oidc:
    issuer: "Issuer URL for the OAuth provider, e.g. https://identity.staging.digital.ai/auth/realms/company"
    jwksUrl: "JWKS URL for the OAuth provider, e.g. https://identity.staging.digital.ai/auth/realms/company/protocol/openid-connect/certs"
    clientId: "client_id_for_oidc"
    clientSecret:
      valueFrom:
        secretKeyRef:
          name: release-assistant-secret
          key: oidcClientSecret
  db:
    urlSuffix: "url_suffix_for_db_connection, e.g. postgresql://postgres:5432/dai_assistant"
    username:
      valueFrom:
        secretKeyRef:
          name: release-assistant-secret
          key: dbUsername
    password:
      valueFrom:
        secretKeyRef:
          name: release-assistant-secret
          key: dbPassword
  aiLlm:
    baseUrl: "url_to_ai_llm, e.g. https://api.openai.com"
    model: "model_name_for_ai_llm"
  release-mcp-helm-chart:
    config:
      appName: "application_name"
      release:
        baseUrl: "url_to_release_server"
        authType: "bearer_token"
      mcp:
        environment: "staging"
      oauth:
        enabled: true
        issuer: "Issuer URL for the OAuth provider, e.g. https://identity.staging.digital.ai/auth/realms/company"
        jwksUrl: "JWKS URL for the OAuth provider, e.g. https://identity.staging.digital.ai/auth/realms/company/protocol/openid-connect/certs"
        audience: "OAuth audience for token validation, e.g. dai-release-mcp"
        usernameClaim: "OAuth claim to use for username, e.g. preferred_username"

Parameters

Global parameters
NameDescriptionValue
global.imageRegistryGlobal Docker image registry override""
global.imagePullSecretsGlobal Docker image pull secrets[]
global.storageClassGlobal Storage Class for dynamic provisioning""
Release Assistant configuration parameters
NameDescriptionValue
replicaCountNumber of deployment replicas1
image.registryDocker image registrydocker.io
image.repositoryDocker image repositoryxebialabsearlyaccess/dai-release-assistant
image.tagDocker image tag{{ .Chart.AppVersion }}
image.pullPolicyDocker image pull policyIfNotPresent
commonLabelsLabels to add to all deployed resources{}
commonAnnotationsAnnotations to add to all deployed resources{}
deploymentLabelsLabels to add to the deployment{}
deploymentAnnotationsAnnotations to add to the deployment{}
podLabelsLabels to add to the pod{}
podAnnotationsAnnotations to add to the pod{}
priorityClassNameName of the priority class to be used by the deployment""
schedulerNameUse an alternate scheduler, e.g. "stork".""
podAffinityPresetPod affinity preset. Ignored if affinity is set. Allowed values: soft or hard""
podAntiAffinityPresetPod anti-affinity preset. Ignored if affinity is set. Allowed values: soft or hardsoft
nodeAffinityPreset.typeNode affinity preset type. Ignored if affinity is set. Allowed values: soft or hard""
nodeAffinityPreset.keyNode label key to match Ignored if affinity is set.""
nodeAffinityPreset.valuesNode label values to match. Ignored if affinity is set.[]
affinityAffinity for pod assignment. Evaluated as a template{}
nodeSelectorNode labels for pod assignment. Evaluated as a template{}
tolerationsTolerations for pod assignment. Evaluated as a template[]
topologySpreadConstraintsTopology Spread Constraints for pod assignment spread across your cluster among failure-domains. Evaluated as a template[]
podSecurityContext.enabledEnable Release Assistant pod's Security Contextfalse
podSecurityContext.runAsUserSet Release Assistant pod's Security Context runAsUser10001
podSecurityContext.fsGroupSet Release Assistant pod's Security Context fsGroup10001
containerSecurityContext.enabledEnabled Release Assistant containers' Security Contexttrue
containerSecurityContext.runAsNonRootSet Release Assistant container's Security Context runAsNonRootfalse
containerSecurityContext.allowPrivilegeEscalationSet Release Assistant container's Security Context allowPrivilegeEscalationfalse
containerSecurityContext.readOnlyRootFilesystemMounts the container's root filesystem as read-onlytrue
containerSecurityContext.capabilitiesSet Release Assistant container's Security Context capabilities
containerSecurityContext.seccompProfileSet Release Assistant container's Security Context seccompProfile
hostAliasesDeployment pod host aliases[]
dnsPolicyDNS Policy for pod""
dnsConfigDNS Configuration pod{}
hostNetworkSet to true to use host networkfalse
terminationGracePeriodSecondsDefault duration in seconds k8s waits for container to exit before sending kill signal.30
diagnosticMode.enabledEnable diagnostic mode (all probes will be disabled and the command will be overridden)false
diagnosticMode.commandCommand to override all containers in the deployment["sleep"]
diagnosticMode.argsArgs to override all containers in the deployment["infinity"]
commandOverride default container command (useful when using custom images)[]
argsOverride default container args (useful when using custom images)[]
lifecycleHooksOverwrite livecycle for the Release Assistant container(s) to automate configuration before or after startup{}
extraEnvVarsExtra environment variables to add to Release Assistant pods[]
extraEnvVarsCMName of existing ConfigMap containing extra environment variables""
extraEnvVarsSecretName of existing Secret containing extra environment variables (in case of sensitive data)""
readinessProbe.enabledEnable readinessProbetrue
readinessProbe.initialDelaySecondsInitial delay seconds for readinessProbe20
readinessProbe.periodSecondsPeriod seconds for readinessProbe10
readinessProbe.timeoutSecondsTimeout seconds for readinessProbe10
readinessProbe.failureThresholdFailure threshold for readinessProbe5
readinessProbe.successThresholdSuccess threshold for readinessProbe1
livenessProbe.enabledEnable livenessProbetrue
livenessProbe.initialDelaySecondsInitial delay seconds for livenessProbe10
livenessProbe.periodSecondsPeriod seconds for livenessProbe30
livenessProbe.timeoutSecondsTimeout seconds for livenessProbe10
livenessProbe.failureThresholdFailure threshold for livenessProbe5
livenessProbe.successThresholdSuccess threshold for livenessProbe1
resources.enabledEnable resource requests/limitstrue
resources.limits.memoryMemory limit2Gi
resources.requests.memoryMemory request2Gi
resources.requests.cpuCPU request250m
Service parameters
NameDescriptionValue
service.typeKubernetes service type (ClusterIP, NodePort, LoadBalancer)ClusterIP
service.portService port8090
service.annotationsService annotations{}
service.labelsService labels{}
Ingress parameters
NameDescriptionValue
ingress.enabledEnable ingressfalse
ingress.hostnameIngress hostnamerelease-assistant.local
ingress.annotationsIngress annotations{}
ingress.tls.enabledEnable TLS for ingressfalse
ingress.pathIngress path/
Release Assistant application parameters
NameDescriptionValue
config.existingConfigMapName of existing ConfigMap with release-ai-assistant-config.yaml""
config.existingSecretName of existing Secret with DB and OpenAI credentials""
config.appNameApplication namedai-release-assistant
config.appEnvApplication environmentstaging
config.release.baseUrlDigital.ai Release server base URLhttp://localhost:5516
config.releaseMcp.serverUrlRelease MCP server URL""
config.oidc.issuerUriOIDC issuer URLhttps://identity.staging.digital.ai/auth/realms/company
config.oidc.jwkSetUriOIDC JWKS URLhttps://identity.staging.digital.ai/auth/realms/company/protocol/openid-connect/certs
config.oidc.clientIdOIDC client IDnil
config.oidc.clientSecretOIDC client secretnil
config.db.urlSuffixDatabase URL suffixpostgresql://postgres:5432/dai_assistant
config.db.usernameDatabase usernamenil
config.db.passwordDatabase passwordnil
config.management.tracingEndpointEnabledEnable tracing endpoint in management configurationfalse
config.otel.tracingExportEnabledEnable OpenTelemetry tracing exportfalse
config.otel.loggingExportEnabledEnable OpenTelemetry logging exportfalse
config.otel.metricsExportEnabledEnable OpenTelemetry metrics exportfalse
config.otel.tracesEndpointOpenTelemetry traces endpointhttp://otel-collector:4318/v1/traces
config.otel.metricsEndpointOpenTelemetry metrics endpointhttp://otel-collector:4318/v1/metrics
config.otel.logsEndpointOpenTelemetry logs endpointhttp://otel-collector:4318/v1/logs
config.aiLlm.profileAI LLM profile namellm
config.aiLlm.baseUrlAI LLM base URLhttps://api.openai.com
config.aiLlm.chatModelAI LLM chat model namegpt-4o
config.openai.apiKeyOpenAI API keynil
config.security.auditLogEnabledEnable security audit loggingfalse
ServiceAccount parameters
NameDescriptionValue

Tag summary

Content type

Helm

Digest

sha256:a8ecc085a

Size

135.8 kB

Last updated

3 days ago

helm pull oci://registry-1.docker.io/xebialabsunsupported/release-assistant-helm-chart --version 26.3.0-714.1100