## Global Docker image parameters
## Please, note that this will override the image parameters, including dependencies, configured to use the global value
## Current available global Docker image parameters: imageRegistry and imagePullSecrets
##
# global:
#   imageRegistry: myRegistryName
#   imagePullSecrets:
#     - myRegistryKeySecretName
#   storageClass: myStorageClass

## Bitnami Apache MXNet (Incubating) image version
## ref: https://hub.docker.com/r/bitnami/mxnet/tags/
##
image:
  registry: docker.io
  repository: bitnami/mxnet
  tag: 1.7.0-debian-10-r39
  ## Specify a imagePullPolicy
  ## Defaults to 'Always' if image tag is 'latest', else set to 'IfNotPresent'
  ## ref: http://kubernetes.io/docs/user-guide/images/#pre-pulling-images
  ##
  pullPolicy: IfNotPresent
  ## Optionally specify an array of imagePullSecrets.
  ## Secrets must be manually created in the namespace.
  ## ref: https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/
  ##
  # pullSecrets:
  #   - myRegistryKeySecretName
  ##
  ## Set to true if you would like to see extra information on logs
  ## It turns BASH and NAMI debugging in minideb
  ## ref:  https://github.com/bitnami/minideb-extras/#turn-on-bash-debugging
  debug: false

## Bitnami git image version
## ref: https://hub.docker.com/r/bitnami/git/tags/
##
git:
  registry: docker.io
  repository: bitnami/git
  tag: 2.28.0-debian-10-r70
  pullPolicy: IfNotPresent
  ## Optionally specify an array of imagePullSecrets.
  ## Secrets must be manually created in the namespace.
  ## ref: https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/
  ##
  # pullSecrets:
  #   - myRegistryKeySecretName

## String to partially override mxnet.fullname template (will maintain the release name)
##
# nameOverride:

## String to fully override mxnet.fullname template
##
# fullnameOverride:

## Init containers parameters:
## volumePermissions: Change the owner and group of the persistent volume mountpoint to runAsUser:fsGroup values from the securityContext section.
##
volumePermissions:
  enabled: false
  image:
    registry: docker.io
    repository: bitnami/minideb
    tag: buster
    pullPolicy: Always
    ## Optionally specify an array of imagePullSecrets.
    ## Secrets must be manually created in the namespace.
    ## ref: https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/
    ##
    # pullSecrets:
    #   - myRegistryKeySecretName
  ## Init container' resource requests and limits
  ## ref: http://kubernetes.io/docs/user-guide/compute-resources/
  ##
  resources:
    # We usually recommend not to specify default resources and to leave this as a conscious
    # choice for the user. This also increases chances charts run on environments with little
    # resources, such as Minikube. If you do want to specify resources, uncomment the following
    # lines, adjust them as necessary, and remove the curly braces after 'resources:'.
    limits: {}
    #   cpu: 100m
    #   memory: 128Mi
    requests: {}
    #   cpu: 100m
    #   memory: 128Mi

## Service for the scheduler node
##
service:
  ## Kubernetes service type
  ##
  type: ClusterIP
  ## Scheduler Service port
  ##
  port: 9092
  ## Specify the nodePort value for the LoadBalancer and NodePort service types.
  ## ref: https://kubernetes.io/docs/concepts/services-networking/service/#type-nodeport
  ##
  # nodePort:
  ## Provide any additional annotations which may be required. This can be used to
  ## set the LoadBalancer service type to internal only.
  ## ref: https://kubernetes.io/docs/concepts/services-networking/service/#internal-load-balancer
  ##
  annotations: {}

## The main entrypoint of your app, this will be executed as:
##   python [file] [args]
##
entrypoint:
  file:
  workDir: /app
  # args:

## Apache MXNet (Incubating) deployment mode. Can be `standalone` or `distributed`
##
mode: distributed

## Number of server nodes (only for distributed mode)
##
serverCount: 2

## Number of worker nodes (only for distributed mode)
##
workerCount: 4

## Pointer a to a secret to mount sensitive data
##
# existingSecret:

## Name of an existing config map containing all the files you want to load in Apache MXNet (Incubating)
##
# configMap:

## The port used to communicate with the scheduler
## MASTER_PORT will be set to this value
##
schedulerPort: 9092

## Enable in order to download files from git repository.
##
cloneFilesFromGit:
  enabled: false
  # repository:
  # revision: master

## Additional environment variables for all node types
##
# commonExtraEnvVars:
#   - name: PS_VERBOSE
#     value: "1"

## Additional environment variables for worker nodes
##
# workerExtraEnvVars:
#   - name: PS_VERBOSE
#     value: "1"

## Additional environment variables for server nodes
##
# serverExtraEnvVars:
#   - name: PS_VERBOSE
#     value: "1"

## Additional environment variables for the scheduler node
##
# schedulerExtraEnvVars:
#   - name: PS_VERBOSE
#     value: "1"

## StatefulSet pod management policy
##
podManagementPolicy: Parallel

## Node labels for pod assignment (this value is evaluated as a template)
## Ref: https://kubernetes.io/docs/user-guide/node-selection/
##
nodeSelector: {}

## Tolerations for pod assignment (this value is evaluated as a template)
## Ref: https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/
##
tolerations: []

## Affinity for pod assignment (this value is evaluated as a template)
## Ref: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#affinity-and-anti-affinity
##
affinity: {}

## Configure resource requests and limits
## ref: http://kubernetes.io/docs/user-guide/compute-resources/
##
resources:
  # We usually recommend not to specify default resources and to leave this as a conscious
  # choice for the user. This also increases chances charts run on environments with little
  # resources, such as Minikube. If you do want to specify resources, uncomment the following
  # lines, adjust them as necessary, and remove the curly braces after 'resources:'.
  limits: {}
  #   cpu: 250m
  #   memory: 256Mi
  requests: {}
  #   cpu: 250m
  #   memory: 256Mi

## Pod Security Context
## ref: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/
##
securityContext:
  enabled: true
  fsGroup: 1001
  runAsUser: 1001

## Configure liveness and readiness probes
## ref: https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-probes/#configure-probes)
##
livenessProbe:
  enabled: true
  initialDelaySeconds: 5
  periodSeconds: 5
  timeoutSeconds: 15
  successThreshold: 1
  failureThreshold: 5
readinessProbe:
  enabled: true
  initialDelaySeconds: 5
  periodSeconds: 5
  timeoutSeconds: 15
  successThreshold: 1
  failureThreshold: 5

## Enable persistence using Persistent Volume Claims
## ref: http://kubernetes.io/docs/user-guide/persistent-volumes/
##
persistence:
  ## If true, use a Persistent Volume Claim
  ##
  enabled: false

  ## Data volume mount path
  ##
  mountPath: /bitnami/mxnet

  ## Persistent Volume Access Mode
  ##
  accessModes:
    - ReadWriteOnce

  ## Persistent Volume size
  ##
  size: 8Gi

  ## Persistent Volume Storage Class
  ## If defined, storageClassName: <storageClass>
  ## If set to "-", storageClassName: "", which disables dynamic provisioning
  ## If undefined (the default) or set to null, no storageClassName spec is
  ##   set, choosing the default provisioner.  (gp2 on AWS, standard on
  ##   GKE, AWS & OpenStack)
  ##
  # storageClass: "-"

  ## Persistent Volume Claim annotations
  ##
  annotations: {}

## Add sidecars to the pod.
## e.g.
## sidecars:
##   - name: your-image-name
##     image: your-image
##     imagePullPolicy: Always
##     ports:
##       - name: portname
##         containerPort: 1234
##
sidecars: []

## Add init containers to the pod.
## e.g.
## initContainers:
##   - name: your-image-name
##     image: your-image
##     imagePullPolicy: Always
##     ports:
##     - name: portname
##       containerPort: 1234
##
initContainers: []
