Documentation roadmap
I maintainer di solito rispondono entro 1 giorno
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 5/5
- Tempo stimato
- Più di una settimana
- Idoneità per principianti
- 45/100
- Tipo di issue
- Documentazione
- Chiarezza
- Abbastanza chiara
- Stato di attività
- Attiva
- Stack tecnologico
- go, kubernetes
- Ambito
- documentation
Direzione di ricerca
La roadmap cita README.md, docs/reference/crd-api.md, docs/, config/samples/ e go.mod; inizia leggendo questi file e gli argomenti suggeriti per la prima fase. Crea le sottodirectory Diataxis, suddividi il README in una pagina di ingresso concisa con collegamenti e documenta i workflow e i requisiti selezionati. Mantieni allineati gli esempi e i riferimenti alla versione di Go ed esegui make api-docs quando cambiano i tipi API.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Documentation Roadmap
Background
This project is a Kubernetes operator that brokers disposable guest OpenShift
clusters for CI. It supports CRC single-node clusters and HyperShift hosted
control planes with KubeVirt workers. It has three audiences: CI engineers
(lease and use clusters), cluster operators (install and configure), and
contributors (Go/Kubebuilder development).
The repository has a roughly 750-line README.md and generated CRD API reference at
docs/reference/crd-api.md. The Diataxis framework
suggests splitting content by the user's need, along two axes: action versus
cognition and study versus work.
| Serves study (acquisition) | Serves work (application) | |
|---|---|---|
| Action | Tutorials | How-to guides |
| Cognition | Explanation | Reference |
Status
- R1: CRD API reference at
docs/reference/crd-api.md. - Split the README into focused documents while keeping it as a concise
landing page. - Resolve the documentation tasks below.
Planned Topics
Tutorials
- T1 - "Lease your first guest cluster": A CI engineer applies a
ClusterLease, waits forBound, reads its kubeconfig Secret, runs
oc get nodesagainst the guest, then deletes the lease. The tutorial uses
a ready, unclaimed instance in a preconfigured pool. - T2 - "Deploy the operator on a prepared management cluster": An operator
verifies the OpenShift Virtualization, storage, networking, and HyperShift
prerequisites that apply; builds and publishes the manager and crc-agent
images; runsmake installandmake deploy; configuresCRC_AGENT_IMAGE;
creates a firstClusterPool; and watches an instance reachReady. - T3 - "Set up local development and testing": A contributor clones the
repository, runsmake testwith envtest, usesmake test-e2ewith Kind,
and runsmake runagainst a configured OpenShift management cluster.
How-to Guides
- H1 - Configure a CRC pool (turnkey
template.crcVersionand manual
releaseImage/bundleSSHKeyRefpaths) - H2 - Configure a HyperShift pool (KubeVirt NodePool sizing and control
plane availability) - H3 - Pre-warm a
CRCBundleto speed up first provisioning - H4 - Configure pull secrets (management cluster default or a custom
pullSecretRef) - H5 - Size pools to hypervisor capacity (
minSize/warmSpares/maxSize) - H6 - Consume a lease from a CI pipeline (scripted poll + kubeconfig extraction)
- H7 - Access a CRC guest API externally (Service + passthrough Route)
- H8 - Troubleshoot a stuck lease, instance, or bundle (capacity, failed
provisioning, crc-agent/CSR failures, and bundle-prep failures) - H9 - Build and push the crc-agent image
- H10 - Upgrade or uninstall the operator (
make undeploythen
make uninstall)
Reference
- R2 - Runtime configuration reference: manager environment variables
(OPERATOR_NAMESPACE,CRC_AGENT_IMAGE, and service-account overrides)
and flags (--metrics-bind-address,--leader-elect, and related TLS and
probe flags). - R3 - Makefile targets reference: every
maketarget and its variables
(IMG,CRC_AGENT_IMG). - R4 - Resource lifecycle reference: CRCBundle, ClusterInstance, and
ClusterLease phases, plus ClusterPool capacity and resource conditions. - R5 - Prerequisites and deployment requirements: supported management
OpenShift baseline, OpenShift Virtualization/CDI, HyperShift, OVNKubernetes,
ingress, storage, LoadBalancer, registry access, and required images.
Explanation
- E1 - Architecture overview: the broker model, four controllers, four
CRDs, crc-agent, and how supply (pool) meets demand (lease). - E2 - The binding model: why the lease↔instance binding lives in exactly
one place (ClusterLease.Status.InstanceRef), modeled on the Kube
scheduler; whyLeaseRefis a derived read-only projection. - E3 - Recycle semantics & the disposable-cluster philosophy: why clusters
are ephemeral and how clean-slate recycling works. - E4 - CRC vs. HyperShift topologies: the tradeoffs, and which CI suites each is
meant for. - E5 - Why crc-agent exists: the post-boot fixup problem for CRC VMs and
why it's a separate SSH-based Go binary reusing the bundle-prep image.
Structure And Priorities
Create docs/ subdirectories for
(tutorials/, how-to/, reference/, explanation/), keeping the README as
a concise landing page that links out. This addresses the current dense,
monolithic README.
Suggested first wave:
- R5 Prerequisites and deployment requirements + T2 Deploy the operator
(make installation requirements and the first deployment reliable) - T1 Lease your first cluster + H6 CI pipeline consumption (unblock the main
consumer workflow) - H1/H2 pool configuration + H8 troubleshooting
- E1 Architecture overview + E2 Binding model (move the established
conceptual material out of the README)
Maintenance
- Keep examples aligned with the files in
config/samples/. - Keep the required Go version aligned with
go.mod. - Run
make api-docsand commitdocs/reference/crd-api.mdafter API type
changes.
- Lingua principale
- Go
- Stelle
- 1
- Fork
- 0
- Merge medio
- 16h 21m
- PR unite (30g)
- 28
Preparare l'ambiente
Avvia il container di sviluppo del progetto nel browser, con il tuo account GitHub.
- Include un Dockerfile o un file Docker Compose
- Nessun modello di pull request
- Nessuna guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di opdev/guestcluster
-
Difficoltà 5/5 Più di una settimana Idoneità per principianti 22/100
opdev/guestcluster#77 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 3/5 1-2 giorni Idoneità per principianti 68/100
opdev/guestcluster#9 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 4/5 3-5 giorni Idoneità per principianti 52/100
opdev/guestcluster#11 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 4/5 3-5 giorni Idoneità per principianti 65/100
opdev/guestcluster#12 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 3/5 1-2 giorni Idoneità per principianti 68/100
opdev/guestcluster#14 ·
I maintainer di solito rispondono entro 1 giorno
Tutte le issue di opdev/guestcluster
Issue simili
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 64/100
FiloSottile/age#758 ·
-
nginx configAperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 62/100
I maintainer di solito rispondono entro 2 giorni
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 63/100
I maintainer di solito rispondono entro 1 giorno