The ai-rolling-demo-gitops repository is a gitops project managing two different instances of RHDH:
- The AI Rolling Demo: It targets to the
mainbranch of the current repo. - The RHDH AI Development: It targets to the
developmentbranch of the current repo.
More specifically:
| Branch | ArgoCD Application | Namespace | Purpose |
|---|---|---|---|
main |
rolling-demo |
rolling-demo-ns |
Production instance, tracks HEAD |
development |
rhdhai-rhdh-dev |
rhdhai-development |
Staging instance, tracks development |
- Develop: New changes (plugin updates, config changes, chart updates) are committed to the
developmentbranch. - Test: For each PR against
developmentandmainwe run all tests available in our testing suite (see docs/TESTING.md for more details). - Validate: Once new changes are merged, the
rhdhai-rhdh-devArgoCD application will automatically get synced from thedevelopmentbranch, deploying the changes to therhdhai-developmentnamespace. This allows us to validate that the newly introduced changes are working as expected in a proper RHDH environment. - Promote: After each release's Feature Freeze has passed, all changes are merged into
main(see our Release Process for more details). Therolling-demoproduction application picks them up automatically via ArgoCD's self-heal and auto-sync policies.
A release in ai-rolling-demo-gitops reality is the act of promoting the development branch to main. The release process has specific stages during the release cycle of each RHDH version.
During the pre-feature freeze stage, we are focusing on the development branch and our goal is to include there all the necessary changes for all the new features of the next RHDH realease.
Once ready, we are opening manually a PR to merge all development changes into main branch.
This can happen multiple times during this stage, in order to accommodate bug fixes, ad-hoc changes etc.
Before opening a promotion PR, confirm that the RHDH AI Development instance works as expected.
The deadline for this stage is the code freeze date.
After the last changes have been merged into the ai-rolling-demo-gitops > main branch we are now ready to cut a new release for the AI Rolling Demo Gitops:
- The release name is identical to the corresponding RHDH version with a
vprefix -> For examplev1.9.0.
Important
A new release tag must be created before each RHDH Release Test Day
The plugin updater workflow runs nightly (and can be triggered manually via workflow_dispatch) to keep all RHDH plugins pinned to their latest available versions.
What it does:
- Checks out the repository.
- Runs the
redhat-ai-dev/rhdh-plugin-gitops-updateraction againstcharts/rhdh/values.yaml. - Scans all
oci:plugin image tags with the prefixesbs_, and resolves the latest available version for each. - Opens a pull request, targeting the
developmentbranch, for each plugin that has a new version available.
This automation ensures that our gitops environment uses always the latest stable versions of rhdh plugins.
Once we have sufficiently validated the changes to the development branch and want to update the main branch, we will manually open a PR from development to main.
Runs nightly (or manually via workflow_dispatch). Reads the current MAJOR.MAJOR-MINOR tag (e.g. 1.10-123) from charts/rhdh/values.yaml, queries quay.io/rhdh/rhdh-hub-rhel9 for the highest minor number available under the same MAJOR.MAJOR- prefix, and opens a PR against development if a newer tag is found. The major version is never bumped automatically. Any previously open PR for an older tag is automatically closed and its branch deleted.