Skip to content

Commit

Permalink
Merge branch 'master' into feature/US-650413
Browse files Browse the repository at this point in the history
  • Loading branch information
bhowd1 authored Dec 27, 2024
2 parents e736e36 + d05ffbb commit 3b1e0d9
Show file tree
Hide file tree
Showing 39 changed files with 702 additions and 168 deletions.
16 changes: 8 additions & 8 deletions .github/workflows/github-actions-build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,9 @@ name: Pega Chart Build

env:
HELM_URL: https://get.helm.sh
HELM_TGZ: helm-v3.14.3-linux-amd64.tar.gz
YAMLLINT_VERSION: 1.34.0
GO_VERSION: 1.21.6
HELM_TGZ: helm-v3.16.3-linux-amd64.tar.gz
YAMLLINT_VERSION: 1.35.1
GO_VERSION: 1.23.4


on:
Expand All @@ -23,15 +23,15 @@ concurrency:

jobs:
run-supplemental-validation-job:
runs-on: ubuntu-22.04
runs-on: ubuntu-24.04
steps:
- name: Check out repository code
uses: actions/checkout@v3
- name: Run validate supplementals script
run : |
sh validate_supplementals.sh
run-lint-job:
runs-on: ubuntu-22.04
runs-on: ubuntu-24.04
steps:
- name: Check out repository code
uses: actions/checkout@v3
Expand Down Expand Up @@ -72,7 +72,7 @@ jobs:
sh validatexml.sh
run-remark-job:
runs-on: ubuntu-22.04
runs-on: ubuntu-24.04
steps:
- name: Check out repository code
uses: actions/checkout@v3
Expand All @@ -91,7 +91,7 @@ jobs:
remark -i .remark_ignore -f -u validate-links .
run-go-tests-job:
runs-on: ubuntu-22.04
runs-on: ubuntu-24.04
steps:
- name: Check out repository code
uses: actions/checkout@v3
Expand Down Expand Up @@ -144,7 +144,7 @@ jobs:
go test ./backingservices | grep "FAIL" -A 8 || true ; test ${PIPESTATUS[0]} -eq 0
run-deploy-job:
runs-on: ubuntu-22.04
runs-on: ubuntu-24.04
needs: [run-lint-job, run-remark-job, run-go-tests-job]
if: ( github.ref_type == 'tag' && startsWith(github.ref, 'refs/tags/v') ) && success()
steps:
Expand Down
12 changes: 6 additions & 6 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# Pega deployment on Kubernetes

This project provides Helm charts and basic examples for deploying Pega on Kubernetes. You will also need to download the required [installation kit](https://community.pega.com/knowledgebase/products/platform/deploy) from the Pega Community which includes rules and data to preload into your relational database. Deploying Pega on Kubernetes requires Pega Infinity 8.3 or later.
This project provides Helm charts and basic examples for deploying Pega on Kubernetes. You will also need to download the required [Pega-provided Docker images](https://docs.pega.com/bundle/platform/page/platform/deployment/client-managed-cloud/pega-docker-images-manage.html) which include rules and data to preload into your relational database. Deploying Pega on Kubernetes requires Pega Infinity 8.3 or later.

[![Build Status](https://github.com/pegasystems/pega-helm-charts/actions/workflows/github-actions-build.yml/badge.svg)](https://github.com/pegasystems/pega-helm-charts/actions/workflows/github-actions-build.yml)
[![GitHub release](https://img.shields.io/github/release/pegasystems/pega-helm-charts.svg)](https://github.com/pegasystems/pega-helm-charts/releases)
Expand Down Expand Up @@ -79,7 +79,7 @@ $ helm inspect values pega/backingservices > backingservices.yaml
* [Instructions to configure the Pega addons](charts/addons/README.md)
* [Instructions to configure the Pega backingservices](charts/backingservices/README.md)

When making customizations for your environment, check the [Pega Platform Support Guide Resources](https://community.pega.com/knowledgebase/articles/pega-platform-support-guide-resources) to verify that those changes are supported by your Pega Platform version.
When making customizations for your environment, check the [Pega Platform Support Guide](https://docs.pega.com/bundle/platform/page/platform/deployment/platform-support-guide/platform-support-guide.html) to verify that those changes are supported by your Pega Platform version.

5. Create namespaces for your Pega deployment, backingservices and the addons (if applicable for your environment).

Expand All @@ -101,7 +101,7 @@ $ helm install backingservices pega/backingservices --namespace pegabackingservi
$ helm install addons pega/addons --namespace pegaaddons --values addons.yaml
```

8. With addons and backservices deployed, you are ready to deploy Pega Infinity using the pega chart. Before installing using the chart, it is a good idea to review the detailed [deployment guide](https://community.pega.com/knowledgebase/articles/deploying-pega-platform-using-kubernetes) to understand how Pega deploys as a distributed system. Running a Helm installation using the pega chart installs a Pega Infinity instance into a specified namespace. After you edit the chart with your configuration requirements, run the following command to install the pega chart.
8. With addons and backservices deployed, you are ready to deploy Pega Infinity using the pega chart. Before installing using the chart, it is a good idea to review [Containerized deployments in Kubernetes environments](https://docs.pega.com/bundle/platform/page/platform/deployment/client-managed-cloud/containerized-deployments-kubernetes.html) to understand how Pega deploys as a distributed system. Running a Helm installation using the pega chart installs a Pega Infinity instance into a specified namespace. After you edit the chart with your configuration requirements, run the following command to install the pega chart.

```bash
$ helm install mypega pega/pega --namespace mypega --values pega.yaml
Expand Down Expand Up @@ -131,7 +131,7 @@ To upgrade your strategic application, use the latest Upgrade Guide available fo

## Patches

To apply a Pega Platform patch with zero downtime to your existing Pega platform software, you must download the latest installer Docker images from Pega Digital Software Delivery and change several options in your Pega Helm chart. For details and helpful resources explaining the Pega Platform patch process, including the Pega Infinity patch policy, see [Applying the latest patch](https://community.pega.com/knowledgebase/articles/keeping-current-pega/86/applying-latest-patch). For step-by-step guidance to apply a Pega Platform patch, see the Pega-provided runbook, [Patching Pega Platform in your deployment](/docs/patching-pega-deployment.md).
To apply a Pega Platform patch with zero downtime to your existing Pega platform software, you must download the latest installer Docker images from Pega Digital Software Delivery and change several options in your Pega Helm chart. For details and helpful resources explaining the Pega Platform patch process, including the Pega Infinity patch policy, see [Pega software maintenance program](https://docs.pega.com/bundle/keeping-current/page/keeping-current/kc/pega-software-maintenance.html). For step-by-step guidance to apply a Pega Platform patch, see the Pega-provided runbook, [Patching Pega Platform in your deployment](/docs/patching-pega-deployment.md).

# Downloading Docker images for your deployment

Expand All @@ -148,7 +148,7 @@ Status: Downloaded pega-docker.downloads.pega.com/platform/pega:<version>

All Docker images for Pega Platform releases that are in Standard Support undergo a nightly rebuild that applies the latest available updates and patches to all third-party components. To take advantage of these updates, you must redeploy your Pega Platform with the latest available images. Pega does not guarantee nightly rebuilds for Pega Platform releases in Extended Support and stops rebuilding images for Pega Platform releases that are out of Extended Support.

For details about downloading and then pushing Docker images to your repository for your deployment, see [Using Pega-provided Docker images](https://docs.pega.com/bundle/platform-88/page/platform/deployment/client-managed-cloud/pega-docker-images-manage.html).
For details about downloading and then pushing Docker images to your repository for your deployment, see [Using Pega-provided Docker images](https://docs.pega.com/bundle/platform/page/platform/deployment/client-managed-cloud/pega-docker-images-manage.html).

From Helm chart versions `2.2.0` and above, update your Pega Platform version to the latest patch version.

Expand Down Expand Up @@ -196,7 +196,7 @@ New versions of this Helm Chart may be released at any time. Versions are define

## Helm charts and Docker images compatibility

Both Helm charts and Docker images undergo frequent updates; new Helm chart releases may appear at any time, and the latest patch versions of the Docker images are rebuilt nightly as part of software maintenance (for more information, see [Pega-provided Docker images](https://docs.pega.com/bundle/platform-88/page/platform/deployment/client-managed-cloud/pega-docker-images-manage.html)). This might result in incompatibility issues during the install and upgrade process. To ensure that Helm charts and Docker images are compatible, do one of the following actions:
Both Helm charts and Docker images undergo frequent updates; new Helm chart releases may appear at any time, and the latest patch versions of the Docker images are rebuilt nightly as part of software maintenance (for more information, see [Pega-provided Docker images](https://docs.pega.com/bundle/platform/page/platform/deployment/client-managed-cloud/pega-docker-images-manage.html)). This might result in incompatibility issues during the install and upgrade process. To ensure that Helm charts and Docker images are compatible, do one of the following actions:

* If you update your Helm charts to the latest version to take advantage of new features, update your Docker images to the latest version as well (latest build of the latest patch).
* If you upgrade your Pega Platform to a later version, use the latest Docker image build and latest Helm chart version.
2 changes: 1 addition & 1 deletion charts/addons/Chart.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -3,4 +3,4 @@ apiVersion: v1
appVersion: "1.0"
description: A Helm chart for Kubernetes
name: addons
version: "3.25.0"
version: "3.25.1"
2 changes: 1 addition & 1 deletion charts/backingservices/Chart.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -17,4 +17,4 @@ description: Helm Chart to provision the latest Search and Reporting Service (SR
# The chart version: Pega provides this as a useful way to track changes you make to this chart.
# As a best practice, you should increment the version number each time you make changes to the chart and its templates, including the app version.
# Versions are expected to follow Semantic Versioning (https://semver.org/)
version: "3.25.0"
version: "3.25.1"
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ Once the service routing (with TLS) is set up, configure the Pega Infinity Const

Only a single Messaging Service deployment is necessary to support an entire organization. Do not install the service in every namespace or for every application or project.

Complete information on the design of the service including architecture, scalability, reliability, operations and troubleshooting is available at [https://documents.constellation.pega.io/messaging/introduction.html](https://documents.constellation.pega.io/messaging/introduction.html).
Complete information on the design of the service including architecture, scalability, reliability, operations and troubleshooting is available at [Constellation service deployment](https://docs.pega.com/bundle/platform/page/platform/deployment/constellation/constellation-overview.html).

## Configuration settings

Expand All @@ -15,7 +15,9 @@ Complete information on the design of the service including architecture, scalab
| `enabled` | Enable the Messaging Service deployment as a backing service. Set this parameter to `true` to deploy the service. |
| `provider` | Enter your Kubernetes provider. Accepted values are aws, gke or k8s. |
| `name` | Deprecated, use `deployment.name`. Specify the name of your messaging service. Your deployment creates resources prefixed with this string. |
| `podLabels` | Provide custom labels for Pods as metadata to be consumed by other tools and libraries. |
| `deployment.name` | Specify the name of your messaging service. Your deployment creates resources prefixed with this string. |
| `deployment.labels` | Provide custom labels for the deployment as metadata to be consumed by other tools and libraries. |
| `imagePullSecretNames` | Deprected, use `docker.imagePullSecretNames`. List pre-existing secrets to be used for pulling docker images. |
| `affinity` | Define pod affinity so that it is restricted to run on particular node(s), or to prefer to run on particular nodes. |
| `docker.imagePullSecretNames` | List pre-existing secrets to be used for pulling docker images. |
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,9 @@ metadata:
name: {{ $depName }}
labels:
app: {{ $depName }}
{{- if and (.Values.deployment) (.Values.deployment.labels) }}
{{ toYaml .Values.deployment.labels | nindent 4 }}
{{- end }}
spec:
replicas: {{ .Values.replicas }}
selector:
Expand All @@ -16,6 +19,9 @@ spec:
metadata:
labels:
app: {{ $depName }}
{{- if .Values.podLabels }}
{{ toYaml .Values.podLabels | nindent 8 }}
{{- end }}
spec:
imagePullSecrets:
- name: {{ include "backingservicesRegistrySecret" ( dict "root" .Values "defaultname" "constellation-messaging" ) }}
Expand Down
10 changes: 5 additions & 5 deletions charts/backingservices/charts/constellation/README.md
Original file line number Diff line number Diff line change
@@ -1,9 +1,6 @@
# Constellation UI setup

Please refer to
> https://documents.constellation.pega.io/static/88/introduction.html
for instructions related to the pegastatic content delivery setup. Once that is complete please proceed with the instructions below for the constellation appstatic service setup.
Please refer to [Constellation service deployment](https://docs.pega.com/bundle/platform/page/platform/deployment/constellation/constellation-overview.html) for instructions related to the pegastatic content delivery setup. Once that is complete please proceed with the instructions below for the constellation appstatic service setup.

## ConstellationUI helm chart

Expand All @@ -30,7 +27,7 @@ Digest: <encryption verification>
Status: Downloaded pega-docker.downloads.pega.com/constellation-appstatic-service/docker-image:xxxxxxx
```

For details about downloading and then pushing Docker images to your repository for your deployment, see [Using Pega-provided Docker images](https://docs.pega.com/client-managed-cloud/87/pega-provided-docker-images).
For details about downloading and then pushing Docker images to your repository for your deployment, see [Pega-provided Docker images](https://docs.pega.com/bundle/platform/page/platform/deployment/client-managed-cloud/pega-docker-images-manage.html).


#### Constellationui runtime configuration
Expand All @@ -45,6 +42,9 @@ The values.yaml file provides configuration options to define the values for the
| `cloudProvider` | Deprecated, use `provider`. Specify the cloud provider details. Accepted values are aws. |
| `provider` | Enter your Kubernetes provider. Accepted values are aws, gke or k8s. |
| `awsCertificateArn` | Specify the arn for the AWS ACM certificate. |
| `podLabels` | Provide custom labels for Pods as metadata to be consumed by other tools and libraries. |
| `deployment.name` | Specify the name of constellation deployment. Your deployment creates resources prefixed with this string. |
| `deployment.labels` | Provide custom labels for the deployment as metadata to be consumed by other tools and libraries. |
| `service.port` | The port of the tier to be exposed to the cluster. The default value is `3000`. |
| `service.targetPort` | The target port of the container to expose. The constellation container exposes web traffic on port `3000`. |
| `service.serviceType` | The [type of service](https://kubernetes.io/docs/concepts/services-networking/service/#publishing-services-service-types) you wish to expose. |
Expand Down
Loading

0 comments on commit 3b1e0d9

Please sign in to comment.