# Copyright © 2020 Bitnami, AT&T, Amdocs, Bell Canada, highstreet technologies
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#       http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.

#################################################################
# Global configuration defaults.
#################################################################
global:
  persistence:
    mountPath: /dockerdata-nfs
    backup:
      mountPath: /dockerdata-nfs/backup
    storageClass:
  clusterName: cluster.local

#################################################################
# Application configuration defaults.
#################################################################
# application image
## Elasticsearch curator parameters
##
enabled: false
name: curator
image: bitnami/elasticsearch-curator:5.8.1-debian-9-r74
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
service:
  port: 9200
cronjob:
  # At 01:00 every day
  schedule: "0 1 * * *"
  annotations: {}
  concurrencyPolicy: ""
  failedJobsHistoryLimit: ""
  successfulJobsHistoryLimit: ""
  jobRestartPolicy: Never
podAnnotations: {}
rbac:
  # Specifies whether RBAC should be enabled
  enabled: false
serviceAccount:
  # Specifies whether a ServiceAccount should be created
  create: true
  # The name of the ServiceAccount to use.
  # If not set and create is true, a name is generated using the fullname template
  name:
psp:
  # Specifies whether a podsecuritypolicy should be created
  create: false
hooks:
  install: false
  upgrade: false
# run curator in dry-run mode
dryrun: false
command: ["curator"]
env: {}
configMaps:
  # Delete indices older than 90 days
  action_file_yml: |-
    ---
    actions:
      1:
        action: delete_indices
        description: "Clean up ES by deleting old indices"
        options:
          timeout_override:
          continue_if_exception: False
          disable_action: False
          ignore_empty_list: True
        filters:
        - filtertype: age
          source: name
          direction: older
          timestring: '%Y.%m.%d'
          unit: days
          unit_count: 90
          field:
          stats_result:
          epoch:
          exclude: False
  # Default config (this value is evaluated as a template)
  config_yml: |-
    ---
    client:
      hosts:
        {{ template "common.fullname" . }}.{{ template "common.namespace" . }}.svc.{{ .Values.global.clusterName }}
      port: {{ .Values.service.port }}
      # url_prefix:
      # use_ssl: True
      # certificate:
      # client_cert:
      # client_key:
      # ssl_no_validate: True
      # http_auth:
      # timeout: 30
      # master_only: False
    # logging:
    #   loglevel: INFO
    #   logfile:
    #   logformat: default
    #   blacklist: ['elasticsearch', 'urllib3']
## Curator resources 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
priorityClassName: ""
# extraVolumes and extraVolumeMounts allows you to mount other volumes
# Example Use Case: mount ssl certificates when elasticsearch has tls enabled
# extraVolumes:
#   - name: es-certs
#     secret:
#       defaultMode: 420
#       secretName: es-certs
# extraVolumeMounts:
#   - name: es-certs
#     mountPath: /certs
#     readOnly: true
## Add your own init container or uncomment and modify the given example.
##
extraInitContainers: {}
## Don't configure S3 repository till Elasticsearch is reachable.
## Ensure that it is available at http://elasticsearch:9200
##
# elasticsearch-s3-repository:
#   image: bitnami/minideb:latest
#   imagePullPolicy: "IfNotPresent"
#   command:
#   - "/bin/bash"
#   - "-c"
#   args:
#   - |
#     ES_HOST=elasticsearch
#     ES_PORT=9200
#     ES_REPOSITORY=backup
#     S3_REGION=us-east-1
#     S3_BUCKET=bucket
#     S3_BASE_PATH=backup
#     S3_COMPRESS=true
#     S3_STORAGE_CLASS=standard
#     install_packages curl && \
#     ( counter=0; while (( counter++ < 120 )); do curl -s http://${ES_HOST}:${ES_PORT} >/dev/null 2>&1 && break; echo "Waiting for elasticsearch $counter/120"; sleep 1; done ) && \
#     cat <<EOF | curl -sS -XPUT -H "Content-Type: application/json" -d @- http://${ES_HOST}:${ES_PORT}/_snapshot/${ES_REPOSITORY} \
#     {
#       "type": "s3",
#       "settings": {
#         "bucket": "${S3_BUCKET}",
#         "base_path": "${S3_BASE_PATH}",
#         "region": "${S3_REGION}",
#         "compress": "${S3_COMPRESS}",
#         "storage_class": "${S3_STORAGE_CLASS}"
#       }
#     }