Skip to content

Create a scripted demo environment that works around the operator while it's broken. - #1247

Open
etsauer wants to merge 20 commits into
dora-metrics:mainfrom
maci0:main
Open

Create a scripted demo environment that works around the operator while it's broken.#1247
etsauer wants to merge 20 commits into
dora-metrics:mainfrom
maci0:main

Conversation

@etsauer

@etsauer etsauer commented May 19, 2026

Copy link
Copy Markdown
Collaborator

Linked Issues

Description

Put together a quick and dirty way to spin up a demo environment and scripted demo using scripts instead of the pelorus-operator, which is currently broken/not building

Testing Instructions

maci0 added 15 commits April 27, 2026 09:53
Replace Poetry with uv for dependency management, update base image to
UBI 9 with Python 3.12, and regenerate all dependency lock files. Remove
legacy setup.py in favor of pyproject.toml-only configuration.
Migrate all exporter models and handlers to pydantic v2 API. Replace
openshift library with kubernetes client directly. Improve webhook
exporter validation and metric handling. Update collector implementations
for PyGithub v2 and azure-devops v7 compatibility.
Adapt all unit and integration tests for pydantic v2 strict mode,
updated PyGithub and azure-devops APIs, and Python 3.12+ behavior.
Improve test fixtures and utility helpers.
Update operator to SDK v1.42.2 and chart to v2.1.0. Add OAuth proxy
and operator source fields to CRD. Fix RBAC permissions, secure
credential handling, and template escaping. Support both Red Hat and
community operator sources. Add monitoring RBAC and Thanos template
improvements.
Migrate all GitHub Actions workflows from Poetry to uv. Update Python
version matrices, container build actions, and workflow template
Dockerfiles for modern tooling.
Add end-to-end test framework with shared library for OpenShift
cluster operations. Include Helm chart deployment and operator-based
deployment test suites with CRC testing support.
Add comprehensive demo tooling: automated install script for OpenShift,
seed-metrics generator for realistic 6-month project history, live demo
script with S2I builds, and step-by-step presales guide with screenshots.
Update Tekton demo for OpenShift 4.20+.
Overhaul README for current architecture. Update installation,
development, and configuration docs for uv and Python 3.12. Add
presales demo guide and refresh exporter documentation.
Update all scripts for Python 3.11+ and uv compatibility. Refresh mock
server configurations for GitLab, Gitea, Jira, and GitHub Issues.
- Add prometheuses/api resource and bind/escalate verbs to operator
  ClusterRole so Helm can create monitoring ClusterRoleBindings
- Fix webhook plugin loader using wrong package path, causing class
  identity mismatch and silent plugin registration failure
- Grant image-puller to all namespace service accounts in install script
- Clean up extra RBAC resources in cleanup script
Switch install script to oauth_proxy_enabled: true, matching the chart
and CRD defaults. Add tokenreviews and subjectaccessreviews permissions
to operator ClusterRole for OAuth RBAC escalation. Add OAuth ClusterRole
cleanup to cleanup script.
Add OAUTH_ENABLED env var (default true) to install script. Generate
htpasswd credentials automatically for community operator source when
OAuth is enabled, fixing the prometheus-htpasswd-secret template error.
- Add Python 3.11+/uv to prerequisites in README
- Document OAUTH_ENABLED env var and OAuth as default login
- Update Pelorus CR example to omit oauth_proxy_enabled (defaults true)
- Add OAUTH_ENABLED and PELORUS_PASSWORD to demo env vars table
- Update OpenShift version from 4.13 to 4.20+ in UpstreamSupport
- Fix operator channel from alpha to stable in Installation guide
- Fix JSON syntax in Development.md launch.json example
@openshift-ci

openshift-ci Bot commented May 19, 2026

Copy link
Copy Markdown

[APPROVALNOTIFIER] This PR is NOT APPROVED

This pull-request has been approved by:
Once this PR has been reviewed and has the lgtm label, please assign etsauer for approval. For more information see the Code Review Process.

The full list of commands accepted by this bot can be found here.

Details Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

maci0 added 5 commits May 25, 2026 12:12
Improve type annotations and error handling across all collectors.
Fix webhook metric deduplication by including namespace and image_sha
in metric IDs. Update attrs import path. Refine DORA dashboard panel
queries and layout. Update CI workflow configurations.
Refactor all collectors for better error handling, type safety, and
logging. Improve webhook metric deduplication with composite keys.
Add dependabot config and harden CI workflows with explicit permissions.
Simplify Containerfile build stages. Update Prometheus recording rules.
Clean up test fixtures and reduce test coupling.
Simplify error handling in failure collectors. Remove redundant
deserialization wrappers. Fix minor doc inconsistencies in webhook
and exporter configuration guides.
Regenerate pinned requirements from uv.lock for exporters and docs.
Expand dependabot config. Improve containerimage collector robustness
and committime base collector error paths. Simplify test setup and
reduce mocking overhead. Harden webhook request validation.
Restructure committime and failure collectors for clearer data flow
and better error recovery. Add failure __init__ module for shared
types. Expand DORA dashboard panels with trend indicators and
additional recording rules. Migrate CI workflow templates from
custom Dockerfiles to composite actions. Improve webhook payload
validation and metric store consistency. Update test assertions
for stricter type checking.
@openshift-ci

openshift-ci Bot commented May 27, 2026

Copy link
Copy Markdown

Thanks for your pull request. Before we can look at it, you'll need to add a 'DCO signoff' to your commits.

📝 Please follow instructions in the contributing guide to update your commits with the DCO

Full details of the Developer Certificate of Origin can be found at developercertificate.org.

The list of commits missing DCO signoff:

  • 95b325a Migrate build system from Poetry to uv and update to Python 3.12
  • 201286d Modernize exporters for pydantic v2 and refactor for reliability
  • 216d460 Update test suite for pydantic v2 and Python 3.12+ compatibility
  • 70557b5 Harden Helm chart, operator RBAC, and CRD for OpenShift 4.20+
  • 1c90e85 Update CI/CD workflows for Python 3.11+ and uv
  • efc3773 Add e2e tests for Helm and Operator deployment on OpenShift
  • f7f1c6c Add demo scripts, seed data generator, and presales workflow
  • 73857da Rewrite documentation for Helm-based deployment workflow
  • 54f13e4 Update helper scripts and mock data for modern tooling
  • a4412a2 Fix files missed during history rewrite
  • aba41cf Fix operator RBAC, webhook plugin loading, and install script
  • bc9bd78 Enable OAuth proxy for Grafana by default
  • df58684 Support configurable OAuth and generate htpasswd for community path
  • c5f0e9b Update docs for OAuth default, Python 3.11+, and env vars
  • 5d2f26d Add operator image build instructions to README
  • cc39ada Refine exporter code, webhook dedup, and dashboard queries
  • 867cf4c Improve exporter reliability, CI hardening, and webhook dedup
  • 9064bfa Clean up failure collectors, deserialization, and docs
  • a6fcc03 Regenerate requirements, refine collectors and test fixtures
  • c047c46 Refactor collectors, expand dashboards, and harden CI
Details

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository. I understand the commands that are listed here.

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

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants