.ci-operator.yaml- OpenShift CI configurationDockerfile- Used by Konflux for building the descheduler image
.tekton/- Konflux configuration (see Konflux section)cmd/- Main application entrypointhack/- Build and development scripts (partially used, not production code)images/- OpenShift CI only (not Konflux). Expected to be dropped after Konflux takes over all CI jobsmetrics/- Metrics related codepkg/- Core Go packagestest/- Currently upstream tests. Some OpenShift teams may run these in OpenShift CI.
.github/- GitHub workflows (docs)assets/- Project logocharts/- Helm chartsdocs/- Documentationexamples/- Examples of descheduler policieskeps/- Kubernetes Enhancement Proposalskubernetes/- Kubernetes manifests used by Charts and E2Es
Upstream descheduler RBAC resources are located under charts/ but are not used in OpenShift. Instead, all RBAC resources are managed by the operator and located under https://github.com/openshift/cluster-kube-descheduler-operator/tree/main/bindata/assets/kube-descheduler.
Important: Every non-upstream commit is expected to be prefixed with UPSTREAM: <carry>: or UPSTREAM: <drop>: .
Note: The version numbers below (1.33 and 4.20) will differ for each release. Rule of thumb: the upstream minor version and OpenShift minor version are 13 units apart (33 - 20 = 13).
- $ git checkout release-1.33
- $ git merge -s ours release-4.20
- $ git checkout release-4.20
- $ git merge release-1.33
- $ git cherry-pick carry commits from the previous release and update them accordingly (e.g. bumping .ci-operator.yaml file)
The .tekton/ configs are carried over from the previous release via rebasing as mentioned above.
The .tekton/ configs get updated regularly by Konflux automation and these commits are not prefixed with UPSTREAM: .
Expected workflow:
- Copy paste the latest
.tekton/configs from the previous release - Bump the OCP versions
- Create vanilla commits that resemble the previous
<carry>commit(s)