Skip to content

Conversation

@pooknull
Copy link
Contributor

@pooknull pooknull commented Nov 12, 2025

K8SPS-567 Powered by Pull Request Badge

https://perconadev.atlassian.net/browse/K8SPS-567

DESCRIPTION

This PR adds a generate-helm-chart Makefile target that generates a Helm chart for the PS operator. Specifically values.yaml and cluster.yaml.

The values.yaml file is created with the same tool used to generate deploy/cr.yaml with all fields specified (cmd/example-gen/cmd/cr-gen). We then post-process the resulting cr.yaml in cmd/example-gen/scripts/generate.sh to keep the original structure of our Helm chart.

The cluster.yaml file is created by a new tool, cmd/example-gen/cmd/chart-gen. It is based on https://github.com/elastic/crd-ref-docs, but instead of generating documentation we use it to parse the PerconaServerMySQL type and feed that data into our go template cmd/example-gen/cmd/chart-gen/templates/helm.tpl to render the chart.

In the future it will be easy to modify this new tool to generate a README.md for the Helm chart.

CHECKLIST

Jira

  • Is the Jira ticket created and referenced properly?
  • Does the Jira ticket have the proper statuses for documentation (Needs Doc) and QA (Needs QA)?
  • Does the Jira ticket link to the proper milestone (Fix Version field)?

Tests

  • Is an E2E test/test case added for the new feature/change?
  • Are unit tests added where appropriate?

Config/Logging/Testability

  • Are all needed new/changed options added to default YAML files?
  • Are all needed new/changed options added to the Helm Chart?
  • Did we add proper logging messages for operator actions?
  • Did we ensure compatibility with the previous version or cluster upgrade process?
  • Does the change support oldest and newest supported PS version?
  • Does the change support oldest and newest supported Kubernetes version?

Copilot AI review requested due to automatic review settings November 12, 2025 11:50
@pull-request-size pull-request-size bot added the size/XXL 1000+ lines label Nov 12, 2025
Copilot finished reviewing on behalf of pooknull November 12, 2025 11:53
@JNKPercona
Copy link
Collaborator

Test Name Result Time
async-ignore-annotations-8-4 passed 00:06:31
async-global-metadata-8-4 passed 00:14:35
async-upgrade-8-0 passed 00:14:06
async-upgrade-8-4 passed 00:13:39
auto-config-8-4 passed 00:24:49
config-8-4 passed 00:17:02
config-router-8-0 passed 00:06:30
config-router-8-4 passed 00:07:42
demand-backup-minio-8-0 passed 00:19:26
demand-backup-minio-8-4 passed 00:19:25
demand-backup-cloud-8-4 passed 00:22:36
demand-backup-retry-8-4 passed 00:18:02
async-data-at-rest-encryption-8-0 passed 00:15:42
async-data-at-rest-encryption-8-4 passed 00:14:18
gr-global-metadata-8-4 passed 00:15:58
gr-data-at-rest-encryption-8-0 passed 00:17:18
gr-data-at-rest-encryption-8-4 passed 00:14:53
gr-demand-backup-minio-8-4 passed 00:12:36
gr-demand-backup-cloud-8-4 passed 00:21:58
gr-demand-backup-haproxy-8-4 passed 00:09:59
gr-finalizer-8-4 passed 00:05:19
gr-haproxy-8-0 passed 00:04:17
gr-haproxy-8-4 passed 00:04:12
gr-ignore-annotations-8-4 passed 00:04:29
gr-init-deploy-8-0 passed 00:09:57
gr-init-deploy-8-4 passed 00:09:16
gr-one-pod-8-4 passed 00:05:42
gr-recreate-8-4 passed 00:17:25
gr-scaling-8-4 passed 00:09:40
gr-scheduled-backup-8-4 passed 00:16:29
gr-security-context-8-4 passed 00:10:00
gr-self-healing-8-4 passed 00:23:26
gr-tls-cert-manager-8-4 passed 00:10:10
gr-users-8-4 passed 00:05:13
gr-upgrade-8-0 failure 00:05:40
gr-upgrade-8-4 passed 00:13:13
haproxy-8-0 passed 00:09:24
haproxy-8-4 passed 00:08:18
init-deploy-8-0 passed 00:05:41
init-deploy-8-4 passed 00:05:46
limits-8-4 passed 00:06:33
monitoring-8-4 passed 00:14:49
one-pod-8-0 passed 00:06:18
one-pod-8-4 passed 00:05:44
operator-self-healing-8-4 passed 00:11:54
pvc-resize-8-4 passed 00:08:46
recreate-8-4 passed 00:17:01
scaling-8-4 passed 00:12:48
scheduled-backup-8-0 passed 00:22:39
scheduled-backup-8-4 passed 00:18:24
service-per-pod-8-4 passed 00:06:20
sidecars-8-4 passed 00:06:02
smart-update-8-4 passed 00:09:16
storage-8-4 passed 00:04:10
telemetry-8-4 passed 00:06:15
tls-cert-manager-8-4 passed 00:10:15
users-8-0 passed 00:08:21
users-8-4 passed 00:08:05
version-service-8-4 passed 00:20:38
Summary Value
Tests Run 59/59
Job Duration 02:59:08
Total Test Time 11:35:27

commit: 50c3d2c
image: perconalab/percona-server-mysql-operator:PR-1168-50c3d2c2

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size/XXL 1000+ lines

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants