Skip to content

feat(matrix-stack): add priorityClassName support to component workloads - #1438

Merged
benbz merged 3 commits into
element-hq:mainfrom
somaz94:feat/priorityClassName
Jul 7, 2026
Merged

feat(matrix-stack): add priorityClassName support to component workloads#1438
benbz merged 3 commits into
element-hq:mainfrom
somaz94:feat/priorityClassName

Conversation

@somaz94

@somaz94 somaz94 commented Jul 6, 2026

Copy link
Copy Markdown
Contributor

Adds an optional priorityClassName value to every matrix-stack component workload, mirroring the existing nodeSelector pattern. Default is unset so rendered output is unchanged for existing users. Resolves #1422.

Validation (run locally against the repo's own tooling):

  • helm lint clean; helm template renders priorityClassName when set, byte-identical to main when unset
  • Full pytest tests/manifests passes (2377 passed), including a new test_pod_priorityClassName.py mirroring test_pod_nodeSelector.py
  • reuse lint compliant, ruff clean, the assemble scripts reproduce with no drift

This is a per-component knob (like nodeSelector). If you'd prefer a global default with per-component overrides (like tolerations/topologySpreadConstraints), happy to switch.

@somaz94
somaz94 force-pushed the feat/priorityClassName branch from 8ddd4eb to c58b2e3 Compare July 6, 2026 09:31
@github-actions

github-actions Bot commented Jul 6, 2026

Copy link
Copy Markdown

dyff of changes in rendered templates of CI manifests

No changes in rendered templates

@benbz benbz left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hi, thanks for this. It looks basically perfect. Ideally we would like a global priorityClassName, that's default unset (to avoid changes to existing deploys as you've done for the per-component values) but can be used if people want to change the priorityClassName for everything at once.

To document: all Synapse workers use the same priorityClassName as the main process. I'm not requesting that as a change, I think that's fine for now and we can add per-worker support later if needed.

@somaz94
somaz94 force-pushed the feat/priorityClassName branch from c58b2e3 to c857949 Compare July 7, 2026 01:36
@CLAassistant

CLAassistant commented Jul 7, 2026

Copy link
Copy Markdown

CLA assistant check
All committers have signed the CLA.

@somaz94

somaz94 commented Jul 7, 2026

Copy link
Copy Markdown
Contributor Author

Thanks @benbz! Added a global priorityClassName (default unset, so existing deploys are unaffected) that all components fall back to, with a per-component value overriding it. Also documented that Synapse workers inherit the main process's priorityClassName. Ready for another look.

@somaz94
somaz94 marked this pull request as ready for review July 7, 2026 06:01
@somaz94
somaz94 requested a review from a team as a code owner July 7, 2026 06:01
Comment thread tests/manifests/test_pod_priorityClassName.py Outdated
@somaz94

somaz94 commented Jul 7, 2026

Copy link
Copy Markdown
Contributor Author

Done — updated the copyright header to # Copyright 2026 Element Creations Ltd. Thanks @benbz!

@benbz

benbz commented Jul 7, 2026

Copy link
Copy Markdown
Member

Done — updated the copyright header to # Copyright 2026 Element Creations Ltd. Thanks @benbz!

As per the suggestion the New Vector Ltd copyright line needed to go too, not just changing the date on the Element Creations Ltd line

@somaz94

somaz94 commented Jul 7, 2026

Copy link
Copy Markdown
Contributor Author

Done — dropped the New Vector Ltd copyright line, the header on the new test file is now just # Copyright 2026 Element Creations Ltd. Thanks!

@benbz
benbz merged commit a5d363e into element-hq:main Jul 7, 2026
155 of 159 checks passed
@benbz

benbz commented Jul 7, 2026

Copy link
Copy Markdown
Member

Thank you very much for your contribution!

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Support setting priorityClass

3 participants