-
Task
-
Resolution: Done
-
Normal
-
None
-
None
-
False
-
False
-
NEW
-
NEW
-
-
-
Logging (Core) - Sprint 210, Logging (Core) - Sprint 211, Logging (Core) - Sprint 212, Logging (Core) - Sprint 213, Logging (Core) - Sprint 214, Logging (Core) - Sprint 215, Logging (Core) - Sprint 216, Logging (Core) - Sprint 218, Logging (Core) - Sprint 219
Goals
Make it simple and well-documented (on the via.documentation site) for anyone to build the entire logging system from source (any branch or commit) and deploy it to the openshift cluster of their choosing. The goal is to make it possible to build and deploy from any commit without specialĀ (VPN, private CI repositories etc.), using only information that can easily be found by navigating from a single site.
Not only is this important to support external contributors, it also makes life much simpler for red-hat insiders since we will be forced to locate and publish all the relevant information that currently is scattered around hard-to-find internal google docs etc.
Non-Goals
- support for plain-k8s clusters (nice to have but not a requirement, maybe a future goal)
- support for all potentially interesting deployment options (helm, gitops etc.)
Motivation
It is difficult for external (and even internal) parties to build and experiment with unreleased versions of cluster logging. Making this easier could increase adoption, early feedback, upstream contributions, and speed up our own development cycle.
Alternatives
Do nothing. Time required to set up for simple testing remains a hindrance to our own development and onboarding new team members. Complexity of the build system effectively excludes non-team members from experimenting by themselves, which means we have to support all RH internal or customer experiments with unreleased code.
Acceptance Criteria
Anyone with public internet access and a github account (no Red Hat VPN or membership of special github orgs) can do the following:
- Find complete build/install instructions in the CLO README/HACKING docs.
- Build a set pro private images, with a preview build version, and push them to any docker/quay repo.
- Install this private release on an openshift cluster using only a git checkout, with or without OLM.
- Pull all dependent images, from the release-tag of their choosing, to their own local podman/docker.
- Verify that logging is working on their cluster, perform simple benchmarks.
For common cases (e.g. "build everything from latest master), all of the above should be possible in at most 3 commands:
- build/copy images to my repo
- deploy functioning cluster logging to my cluster
- run basic verification and benchmarks
Risk and Assumptions
May introduce some changes to current development practice, but new practice must be simpler.
Documentation Considerations
All required docs must be on or linked from the CLO README and docs dir.
All documents that describe the CLO repo directly (Makefiles, scripts etc.) must be on the CLO repo so they are versioned with the repo.
Supporting docs (descriptions of OLM, general Openshift etc.) may be linked from elsewhere.
Open Questions
Note: that it is fairly easy and free for anyone to get a red hat password and openshift pull secret, however it cannot be automated (sign up for RH login, log in, multiple clicks and download from red-hat sites.) This is one of the pain points for testing, as devs must go thru this manual process repeatedly because secrets expire every few weeks. Can we do better?
Additional Notes
Making this easier is critical to making our development and release process smoother and faster, will allow non-team members in Red Hat to more easily evaluate and experiment with logging, and wil encouraging valuable upstream involvement.
- blocks
-
LOG-1766 Define, document, and implement strategy for releasing preview features
- Closed
-
LOG-2158 Simplify and speed up core e2e tests and functional.
- Closed
- incorporates
-
LOG-1509 Allow users to install specific version of CLO or ELO
- Closed
- is duplicated by
-
LOG-1554 Easy Deployment of Candidate Builds
- Closed
- is related to
-
LOG-1767 Document in-repo release process
- Closed
- relates to
-
LOG-1431 Document How to deploy pre-release code from origin images
- To Do
- links to
- mentioned on