Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions charts/pega/templates/_pega-pdb.tpl
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,10 @@ kind: PodDisruptionBudget
metadata:
name: {{ .name }}-pdb
namespace: {{ .root.Release.Namespace }}
{{- if .pdb.labels }}
labels:
{{ toYaml .pdb.labels | indent 4 }}
{{- end }}
spec:
{{- if .pdb.minAvailable }}
minAvailable: {{ .pdb.minAvailable }}
Expand Down
4 changes: 4 additions & 0 deletions charts/pega/templates/_pega_hpa.tpl
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,10 @@ kind: HorizontalPodAutoscaler
metadata:
name: {{ .name | quote}}
namespace: {{ .root.Release.Namespace }}
{{- if .hpa.labels }}
labels:
{{ toYaml .hpa.labels | indent 4 }}
{{- end }}
spec:
scaleTargetRef:
apiVersion: apps/v1
Expand Down
15 changes: 15 additions & 0 deletions terratest/src/test/pega/data/values_hpa_custom_label.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
---
global:
tier:
- name: "web"
hpa:
enabled: true
labels:
web-label: "somevalue"
web-other-label: "someothervalue"
- name: "batch"
hpa:
enabled: true
labels:
batch-label: "batchlabel"
batch-other-label: "anothervalue"
293 changes: 293 additions & 0 deletions terratest/src/test/pega/data/values_pdb_custom_labels.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,293 @@
---
global:
# This values.yaml file is an example. For more information about
# each configuration option, see the project readme.

# Enter your Kubernetes provider.
provider: "YOUR_KUBERNETES_PROVIDER"

deployment:
# The name specified will be used to prefix all of the Pega pods (replacing "pega" with something like "app1-dev").
name: "pega"

# Deploy Pega nodes
actions:
execute: "deploy"

# Provide JDBC connection information to the Pega relational database
# If you are installing or upgrading on IBM DB2, update the udb.conf file in the /charts/pega/charts/installer/config/udb directory with any additional connection properties.
jdbc:
# url Valid values are:
#
# Oracle jdbc:oracle:thin:@//localhost:1521/dbName
# IBM DB/2 z / OS jdbc:db2://localhost:50000/dbName
# IBM DB/2 jdbc:db2://localhost:50000/dbName:fullyMaterializeLobData=true;fullyMaterializeInputStreams=true;
# progressiveStreaming=2;useJDBC4ColumnNameAndLabelSemantics=2;
# SQL Server jdbc:sqlserver://localhost:1433;databaseName=dbName;selectMethod=cursor;sendStringParametersAsUnicode=false
# PostgreSQL jdbc:postgresql://localhost:5432/dbName
url: "YOUR_JDBC_URL"
# driverClass -- jdbc class. Valid values are:
#
# Oracle oracle.jdbc.OracleDriver
# IBM DB/2 com.ibm.db2.jcc.DB2Driver
# SQL Server com.microsoft.sqlserver.jdbc.SQLServerDriver
# PostgreSQL org.postgresql.Driver
driverClass: "YOUR_JDBC_DRIVER_CLASS"
# pega.database.type Valid values are: mssql, oracledate, udb, db2zos, postgres
dbType: "YOUR_DATABASE_TYPE"
# For databases that use multiple JDBC driver files (such as DB2), specify comma separated values for 'driverUri'
driverUri: "YOUR_JDBC_DRIVER_URI"
username: "YOUR_JDBC_USERNAME"
password: "YOUR_JDBC_PASSWORD"
# CUSTOM CONNECTION PROPERTIES
# Add a list of ; delimited connections properties. The list must end with ;
# For example: connectionProperties=user=usr;password=pwd;
connectionProperties: ""
rulesSchema: "YOUR_RULES_SCHEMA"
dataSchema: "YOUR_DATA_SCHEMA"
customerDataSchema: ""

# If using a custom Docker registry, supply the credentials here to pull Docker images.
docker:
registry:
url: "YOUR_DOCKER_REGISTRY"
username: "YOUR_DOCKER_REGISTRY_USERNAME"
password: "YOUR_DOCKER_REGISTRY_PASSWORD"
# Docker image information for the Pega docker image, containing the application server.
pega:
image: "pegasystems/pega"

# Upgrade specific properties
upgrade:
# Configure only for aks/pks
# Run "kubectl cluster-info" command to get the service host and https service port of kubernetes api server.
# Example - Kubernetes master is running at https://<service_host>:<https_service_port>
kube-apiserver:
serviceHost: "API_SERVICE_ADDRESS"
httpsServicePort: "SERVICE_PORT_HTTPS"

# Specify the Pega tiers to deploy
tier:
- name: "web"
# Create a an interactive tier for web users. This tier uses
# the WebUser node type and will be exposed via a service to
# the load balancer.
nodeType: "WebUser"

# Pega requestor specific properties
requestor:
# Inactivity time after which requestor is passivated
passivationTimeSec: 900

service:
# For help configuring the service block, see the Helm chart documentation
# https://github.com/pegasystems/pega-helm-charts/blob/master/charts/pega/README.md#service
port: 80
targetPort: 8080

ingress:
# For help configuring the ingress block including TLS, see the Helm chart documentation
# https://github.com/pegasystems/pega-helm-charts/blob/master/charts/pega/README.md#ingress

# Enter the domain name to access web nodes via a load balancer.
# e.g. web.mypega.example.com
domain: "YOUR_WEB_NODE_DOMAIN"
tls:
# Enable TLS encryption
enabled: true
# secretName:
# useManagedCertificate: false
# ssl_annotation:

replicas: 1
javaOpts: ""
pegaDiagnosticUser: ""
pegaDiagnosticPassword: ""

deploymentStrategy:
rollingUpdate:
maxSurge: 1
maxUnavailable: 0
type: RollingUpdate

livenessProbe:
port: 8081

# Optionally overridde default resource specifications
# cpuRequest: 2
# memRequest: "12Gi"
# cpuLimit: 4
# memLimit: "12Gi"
# initialHeap: "4096m"
# maxHeap: "8192m"

# To configure an alternative user for custom image, set value for runAsUser.
# See, https://github.com/pegasystems/pega-helm-charts/blob/master/charts/pega/README.md#security-context
# securityContext:
# runAsUser: 9001

hpa:
enabled: true

# Set enabled to true to include a Pod Disruption Budget for this tier
pdb:
enabled: true
minAvailable: 1
labels:
weblabel: "somevalue"
anotherlabel: "anothervalue"

- name: "batch"
# Create a background tier for batch processing. This tier uses
# a collection of background node types and will not be exposed to
# the load balancer.
nodeType: "BackgroundProcessing,Search,Batch,RealTime,Custom1,Custom2,Custom3,Custom4,Custom5,BIX"

replicas: 1
javaOpts: ""

pegaDiagnosticUser: ""
pegaDiagnosticPassword: ""

deploymentStrategy:
rollingUpdate:
maxSurge: 1
maxUnavailable: 0
type: RollingUpdate

livenessProbe:
port: 8081

# To configure an alternative user for your custom image, set value for runAsUser
# See, https://github.com/pegasystems/pega-helm-charts/blob/master/charts/pega/README.md#security-context
# securityContext:
# runAsUser: 9001

hpa:
enabled: true

# Set enabled to true to include a Pod Disruption Budget for this tier
pdb:
enabled: true
minAvailable: 1
labels:
batchlabel: "batchvalue"
anotherbatchlabel: "batchvalue2"

- name: "stream"
# Create a stream tier for queue processing. This tier deploys
# as a stateful set to ensure durability of queued data. It may
# be optionally exposed to the load balancer.
nodeType: "Stream"

# Pega requestor specific properties
requestor:
# Inactivity time after which requestor is passivated
passivationTimeSec: 900

service:
port: 7003
targetPort: 7003

# If a nodeSelector is required for this or any tier, it may be specified here:
# nodeSelector:
# disktype: ssd

ingress:
# Enter the domain name to access web nodes via a load balancer.
# e.g. web.mypega.example.com
domain: "YOUR_STREAM_NODE_DOMAIN"
tls:
# Enable TLS encryption
enabled: true
# secretName:
# useManagedCertificate: false
# ssl_annotation:

livenessProbe:
port: 8081

# To configure an alternative user for your custom image, set value for runAsUser
# See, https://github.com/pegasystems/pega-helm-charts/blob/master/charts/pega/README.md#security-context
# securityContext:
# runAsUser: 9001

replicas: 2

volumeClaimTemplate:
resources:
requests:
storage: 5Gi

# Set enabled to true to include a Pod Disruption Budget for this tier
pdb:
enabled: true
minAvailable: 1
# maxUnavailable: "50%"

# External services

# Cassandra automatic deployment settings.
cassandra:
enabled: true
persistence:
enabled: true
resources:
requests:
memory: "4Gi"
cpu: 2
limits:
memory: "8Gi"
cpu: 4

# DDS (external Cassandra) connection settings.
# These settings should only be modified if you are using a custom Cassandra deployment.
dds:
externalNodes: ""
port: "9042"
username: "dnode_ext"
password: "dnode_ext"
clientEncryption: false
trustStore: ""
trustStorePassword: ""
keyStore: ""
keyStorePassword: ""

# Elasticsearch deployment settings.
# Note: This Elasticsearch deployment is used for Pega search, and is not the same Elasticsearch deployment used by the EFK stack.
# These search nodes will be deployed regardless of the Elasticsearch configuration above.
# Refer to README document to configure `Search and Reporting Service` as a search functionality provider under this section.
pegasearch:
image: "pegasystems/search"
memLimit: "3Gi"
replicas: 1

# Pega Installer settings.
installer:
image: "YOUR_INSTALLER_IMAGE:TAG"
# Set the initial administrator@pega.com password for your installation. This will need to be changed at first login.
# The adminPassword value cannot start with "@".
adminPassword: "ADMIN_PASSWORD"
# Upgrade specific properties
upgrade:
# Type of upgrade
# Valid upgradeType values are 'in-place' , 'zero-downtime' , 'custom' , 'out-of-place-rules' , 'out-of-place-data' .
upgradeType: "in-place"
# Specify a name for a target rules schema that the upgrade process creates for patches and upgrades.
targetRulesSchema: ""
# Specify a name for a target data schema that the upgrade process creates for patches and upgrades.
# For postgres databases that you are upgrading from Pega Infinity version 8.4.0 and later
# And for Oracle databases that you are upgrading from Pega Infinity version 8.4.3 and later.
targetDataSchema: ""

# Hazelcast settings (applicable from Pega 8.6)
hazelcast:
image: "YOUR_HAZELCAST_IMAGE:TAG"
# Setting below to true will deploy the infinity in client-server Hazelcast model
enabled: false
# No. of initial members to join
replicas: 3
# UserName to be used in client-server Hazelcast model for authentication
username: ""
# Password to be used in client-server Hazelcast model for authentication
password: ""
Loading