# SPDX-License-Identifier: AGPL-3.0-or-later {{- define "worker.hpa" -}} {{- $name := .name -}} {{- $values := .values -}} {{- $ctx := .context -}} apiVersion: autoscaling/v2 kind: HorizontalPodAutoscaler metadata: name: {{ $name }} namespace: {{ $ctx.Values.global.namespace }} labels: {{- include "fluxer.labels" $ctx | nindent 4 }} {{- include "fluxer.selectorLabels" (dict "name" $name "context" $ctx) | nindent 4 }} spec: scaleTargetRef: apiVersion: apps/v1 kind: Deployment name: {{ $name }} minReplicas: {{ $values.autoscaling.minReplicas }} maxReplicas: {{ $values.autoscaling.maxReplicas }} metrics: - type: Resource resource: name: cpu target: type: Utilization averageUtilization: {{ $values.autoscaling.targetCPUUtilizationPercentage }} behavior: scaleDown: stabilizationWindowSeconds: 300 scaleUp: stabilizationWindowSeconds: 30 {{- end -}} {{- if and .Values.workerUnfurl.autoscaling .Values.workerUnfurl.autoscaling.enabled }} {{ include "worker.hpa" (dict "name" "worker-unfurl" "values" .Values.workerUnfurl "context" .) }} {{- end }} {{- if and .Values.workerBatch.autoscaling .Values.workerBatch.autoscaling.enabled }} --- {{ include "worker.hpa" (dict "name" "worker-batch" "values" .Values.workerBatch "context" .) }} {{- end }}