-
Notifications
You must be signed in to change notification settings - Fork 23
docs: consolidate and improve documentation across the repository #693
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Open
raballew
wants to merge
132
commits into
jumpstarter-dev:main
Choose a base branch
from
raballew:490-docs-consolidation-improvements
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Changes from 21 commits
Commits
Show all changes
132 commits
Select commit
Hold shift + click to select a range
b82609d
docs: consolidate and improve documentation across the repository
raballew da5c132
fix: update old jumpstarter-controller repo URL to monorepo path
raballew 4dd4c53
fix: remove duplicate license files and sections from subdirectories
raballew 7009772
fix: simplify Contributing sections in subdirectory READMEs
raballew 1f2f37a
fix: repair broken links across documentation
raballew aff804f
fix: update outdated references in documentation
raballew 60a1492
fix(ci): add timeout-minutes to linkcheck job
raballew 56998d2
fix: remove Contributing sections from subdirectory READMEs
raballew 1dfac31
fix: remove duplicate Links section from config-svc README
raballew 174871f
fix: remove duplicate Related Projects and Documentation sections
raballew 1493b6d
fix: standardize subdirectory READMEs and remove duplicated content
raballew 0505b53
fix: repair docs build include path and broken prometheus anchor
raballew c6af8f4
docs: add agentic by design framing across README and docs
raballew 443182e
docs: restructure guides into examples and integration patterns
raballew 6d1c5a8
fix: repair cross-references after docs restructure
raballew 02d8392
fix: replace en-dash characters with hyphens in JEPs
raballew 6796fce
docs: move setup guides into setup/ subdirectory
raballew a8b1d73
fix: shorten agentic highlight and update docs copyright to 2026
raballew 9a1d764
fix: remove duplicate Router section from introduction
raballew 2c58571
docs: add Router mermaid diagram to service.md
raballew f64bb24
docs: move RPC section from introduction to drivers
raballew e9e08e6
docs: nest setup guides under setup/index in navigation
raballew 7111e78
docs: polish index pages, titles, and diagram themes
raballew 2483792
docs: merge Project Governance into Contributing
raballew ef67c09
docs: add JEP reference to contributing and fix dev environment paths
raballew fdfedc2
docs: move JEPs from internal/ to contributing/jeps/
raballew 48b09cc
docs: merge CI/CD and agentic bullets, remove JEPs abbreviation
raballew 83cf1b1
docs: merge operator install into production deployment page
raballew d83ed33
fix: replace em-dash and en-dash characters with ASCII dashes
raballew 257b939
docs: expand glossary with all terms from documentation
raballew 7510577
docs: trim glossary to Jumpstarter-specific terms only
raballew 724f862
docs: convert glossary to Sphinx directive and add term references
raballew 2e4a88a
docs: organize glossary into Acronyms, Entities, Concepts, Tools
raballew 471fb9e
docs: add missing glossary term references across all docs
raballew 7b3aab3
docs: link all glossary term occurrences and fix redundant expansions
raballew 8539341
docs: add Direct Mode to introduction operation modes
raballew 8d8106f
docs: add MicroShift bootc option to service installation index
raballew e9794d4
docs: rename service install pages to CLI, Operator, Bootc Image
raballew 3992d40
docs: add Bootc Image to service toctree as external link
raballew 5ba5337
docs: comprehensive glossary term linking across all user-facing docs
raballew 4ee02a5
docs: mention all three operation modes consistently
raballew 9980031
docs: add SSH MITM driver, split categories, fix naming consistency
raballew 6cbeff7
docs: standardize all driver page titles to "Name Driver" format
raballew 9a5bcd7
fix: update driver category anchors to match renamed sections
raballew f5e699f
docs: move bootc deployment into docs site as a proper page
raballew 5cba725
docs: align bootc page structure with CLI and Operator pages
raballew 6fb1a5b
docs: align CLI, Operator, and Bootc page structures
raballew e9d8b1c
docs: move Operator API reference to reference section
raballew 85ee2d2
fix: drop specific Fedora version from dev environment docs
raballew 3b174f4
chore: move devcontainer and devfile to repo root
raballew 4aec913
docs: prefer open source project names over commercial products
raballew be14e30
docs: use OpenShift consistently instead of OKD
raballew a400971
docs: trim glossary from 48 to 24 core terms
raballew 028d2fa
docs: link driver and client terms in core components section
raballew 9881d85
Revert "docs: link driver and client terms in core components section"
raballew 173a296
docs: rename Enhancement Proposals to Jumpstarter Enhancement Proposals
raballew b35ed2a
docs: split contributing into index with child pages
raballew 6fb9d49
docs: remove acronym expansion guideline
raballew 58dd69f
fix: remove trailing dot from bullet point
raballew d8d8c48
fix: remove redundant sentence from contributing guidelines
raballew 5bae550
docs: rename JEPs page title, increase contributing toctree depth
raballew 9563314
docs: remove JEPs from sidebar toctree
raballew dbff81c
docs: sync operator API reference with Go CRD types
raballew a00a6a7
docs: auto-generate operator API reference from CRD schema
raballew e4709d7
docs: replace sphinx-jsonschema with auto-generated CRD tables
raballew e1da6ec
docs: split Kubernetes API Extensions into individual CRD pages
raballew 1081c50
docs: rename kubernetes-api to kubernetes-api-extensions
raballew dca2de8
docs: rename kubernetes-api-extensions to crds, add CRD to glossary
raballew e0beb43
docs: set consistent width for first table column
raballew 25fbf66
docs: skip expanding well-known Kubernetes types in CRD tables
raballew af89c6e
fix: correct CRD doc comments and remove scaffolding boilerplate
raballew f9cbe65
chore: integrate CRD doc generation into build and gitignore
raballew 0f09d9b
docs: rename files to match page titles
raballew 0ac2106
docs: move MCP to integration-patterns, fix index titles
raballew 1a642d7
docs: replace GitHub controller link with internal CRDs reference
raballew 808a52b
docs: rename examples, merge MCP into AI agent integration
raballew f588ff0
docs: rename to Agentic Integration, restore MCP to package reference
raballew 5d23a71
docs: trim MCP README to reference-only, remove duplicated content
raballew 6857006
docs: apply blue sequence diagram theme to agentic workflow chart
raballew 1214f04
fix: stop generator from overwriting CRDs index.md
raballew baa473c
fix: add docs-generate-crds dependency to docs-all target
raballew 330ff0e
chore: regenerate CRD manifests from corrected Go type comments
raballew 7c5666c
docs: rename Contributing > Getting Started to How to Contribute
raballew d4ed44a
docs: add dynamic mermaid theme switching for light/dark mode
raballew da1a9eb
docs: rename integration pattern pages to consistent noun phrases
raballew 7029351
docs: replace glossary links with hover tooltips
raballew 9637741
fix: rewrite glossary tooltip JS to match Sphinx HTML structure
raballew 192976a
docs: use CSS tooltip for instant glossary hover, drop help cursor
raballew 4e27d0e
docs: shorten glossary definitions for concise tooltips
raballew b595d7e
docs: add tap-to-show tooltips on touch devices
raballew 7417371
docs: add mermaid diagram for Direct Mode
raballew 27526db
docs: show all three operation modes in core components diagram
raballew 57a7046
fix: capitalize glossary terms consistently in component interactions
raballew 564247a
fix: use plain text in page links to prevent tooltip interference
raballew a201c64
docs: remove documentation-in-progress warning banner
raballew f557b34
docs: align sidebar logo with content heading
raballew 0280324
docs: wrap code references in backticks across all user-facing docs
raballew ff53f84
fix: remove global table-layout fixed CSS that broke non-CRD tables
raballew 04eea2c
docs: shorten tab headings on operator install page
raballew f33ba13
docs: rework operator page with synced inline-tabs
raballew db2448b
docs: replace inline auth reference with link to CRD page
raballew a3e516e
docs: standardize list styles across all docs
raballew 3675dca
docs: standardize shell code blocks to console
raballew 9695c3c
fix: regenerate CRD manifests with controller-gen v0.18.0
raballew c9dec12
fix: restore operator image tag to latest
raballew 79a7178
docs: standardize to MAN Pages and add MAN to glossary
raballew 931b67c
fix: restore driver doc symlinks to package READMEs
raballew e27f83f
docs: add autoclass API reference to 9 driver READMEs
raballew e6a17df
docs: add docstrings and replace manual API docs with autoclass
raballew 6c8c643
fix: add class docstrings to fix RST emphasis warnings
raballew 73c516a
docs: add missing Installation, Configuration, API sections to 5 drivers
raballew 6ac4b34
docs: standardize driver README heading order across all packages
raballew a929925
docs: mark Usage and Architecture as optional in driver template
raballew 2641827
docs: eliminate driver README outlier sections
raballew dbbe1e8
docs: add optional Troubleshooting section to driver template
raballew ef79658
fix: harden CRD docs generator with error handling and cleanup
raballew 66d09ce
test: add comprehensive test suite for generate-crd-docs.py
raballew 0004fa0
fix: replace stale Identity references with Client in controller
raballew 0317145
fix: replace em-dash characters with ASCII hyphens in jep-process
raballew cccab60
fix: use textContent instead of innerHTML in glossary tooltips
raballew 8b198fb
fix: resolve import sorting and unused import lint errors
raballew 3aafc3c
fix: use textContent instead of innerHTML in mermaid-theme.js
raballew e7392da
docs: replace em dash characters with ASCII hyphens
raballew dca540e
docs: replace en dash characters with ASCII hyphens
raballew a155ef1
docs: replace prose double-hyphens with single hyphens
raballew 29b8e37
docs: fix dash guideline to reference single hyphens
raballew 90da82e
ci: update e2e workflows to Go 1.24 to match controller/go.mod
raballew ab82e91
fix: add docs-generate-crds dependency to all doc targets
raballew 24beead
docs: rename authentication heading to Username Collisions
raballew e4ea76c
docs: remove cost management and testing from integration patterns
raballew e8c5db8
Update python/docs/source/glossary.md
raballew cd29093
docs: fix mermaid syntax and rename service installation pages
raballew File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
File renamed without changes.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,119 +1,24 @@ | ||
| # jumpstarter-controller | ||
| # Jumpstarter Controller | ||
|
|
||
| [](https://github.com/jumpstarter-dev/jumpstarter-controller/actions/workflows/build.yaml) | ||
|  | ||
|  | ||
| [](https://deepwiki.com/jumpstarter-dev/jumpstarter-controller) | ||
| The Jumpstarter controller is the Kubernetes-native service component of | ||
| [Jumpstarter](https://jumpstarter.dev). It implements the server-side gRPC | ||
| services defined by the [Jumpstarter Protocol](../protocol/), running as a | ||
| Kubernetes operator that manages Custom Resources for clients, exporters, and | ||
| leases. The controller enables distributed hardware sharing by routing traffic | ||
| between clients and exporters, handling lease negotiation, and enforcing access | ||
| policies. | ||
|
|
||
| // TODO(user): Add simple overview of use/purpose | ||
|
|
||
| ## Description | ||
| // TODO(user): An in-depth paragraph about your project and overview of use | ||
|
|
||
| ## Getting Started | ||
|
|
||
| ### Prerequisites | ||
| - go version v1.22.0+ | ||
| - kubectl version v1.11.3+. | ||
| - Access to a Kubernetes v1.11.3+ cluster. | ||
|
|
||
| ### To Deploy on the cluster | ||
| **Build and push your image to the location specified by `IMG`:** | ||
| ## Development | ||
|
|
||
| ```sh | ||
| make docker-push IMG=<some-registry>/jumpstarter-controller:tag | ||
| ``` | ||
|
|
||
| **NOTE:** This image ought to be published in the personal registry you specified. | ||
| And it is required to have access to pull the image from the working environment. | ||
| Make sure you have the proper permission to the registry if the above commands don’t work. | ||
|
|
||
| **Install the CRDs into the cluster:** | ||
|
|
||
| ```sh | ||
| make install | ||
| ``` | ||
|
|
||
| **Deploy the Manager to the cluster with the image specified by `IMG`:** | ||
|
|
||
| ```sh | ||
| make deploy IMG=<some-registry>/jumpstarter-router:tag | ||
| ``` | ||
|
|
||
| > **NOTE**: If you encounter RBAC errors, you may need to grant yourself cluster-admin | ||
| privileges or be logged in as admin. | ||
|
|
||
| **Create instances of your solution** | ||
| You can apply the samples (examples) from the config/sample: | ||
|
|
||
| ```sh | ||
| kubectl apply -k config/samples/ | ||
| ``` | ||
|
|
||
| >**NOTE**: Ensure that the samples has default values to test it out. | ||
|
|
||
| ### To Uninstall | ||
| **Delete the instances (CRs) from the cluster:** | ||
|
|
||
| ```sh | ||
| kubectl delete -k config/samples/ | ||
| ``` | ||
|
|
||
| **Delete the APIs(CRDs) from the cluster:** | ||
|
|
||
| ```sh | ||
| make uninstall | ||
| ``` | ||
|
|
||
| **UnDeploy the controller from the cluster:** | ||
| make deploy IMG=<some-registry>/jumpstarter-controller:tag | ||
|
|
||
| ```sh | ||
| make undeploy | ||
| make uninstall | ||
| ``` | ||
|
|
||
| ## Project Distribution | ||
|
|
||
| Following are the steps to build the installer and distribute this project to users. | ||
|
|
||
| 1. Build the installer for the image built and published in the registry: | ||
|
|
||
| ```sh | ||
| make build-installer IMG=<some-registry>/jumpstarter-router:tag | ||
| ``` | ||
|
|
||
| NOTE: The makefile target mentioned above generates an 'install.yaml' | ||
| file in the dist directory. This file contains all the resources built | ||
| with Kustomize, which are necessary to install this project without | ||
| its dependencies. | ||
|
|
||
| 2. Using the installer | ||
|
|
||
| Users can just run kubectl apply -f <URL for YAML BUNDLE> to install the project, i.e.: | ||
|
|
||
| ```sh | ||
| kubectl apply -f https://raw.githubusercontent.com/<org>/jumpstarter-router/<tag or branch>/dist/install.yaml | ||
| ``` | ||
|
|
||
| ## Contributing | ||
| // TODO(user): Add detailed information on how you would like others to contribute to this project | ||
|
|
||
| **NOTE:** Run `make help` for more information on all potential `make` targets | ||
|
|
||
| More information can be found via the [Kubebuilder Documentation](https://book.kubebuilder.io/introduction.html) | ||
|
|
||
| ## License | ||
|
|
||
| Copyright 2024. | ||
|
|
||
| Licensed under the Apache License, Version 2.0 (the "License"); | ||
| you may not use this file except in compliance with the License. | ||
| You may obtain a copy of the License at | ||
|
|
||
| http://www.apache.org/licenses/LICENSE-2.0 | ||
|
|
||
| Unless required by applicable law or agreed to in writing, software | ||
| distributed under the License is distributed on an "AS IS" BASIS, | ||
| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | ||
| See the License for the specific language governing permissions and | ||
| limitations under the License. | ||
|
|
||
| For production deployment, see the | ||
| [Service Installation](https://jumpstarter.dev/main/getting-started/installation/index.html) | ||
| documentation. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -400,21 +400,3 @@ make bootc-rm bootc-build bootc-run | |
| - Console login will require password change from default `jumpstarter` | ||
| - Access web UI at `http://<host-ip>:8880` and set new password | ||
|
|
||
| ## Resources | ||
|
|
||
| ### Jumpstarter Documentation | ||
| - [Official Installation Guide](https://jumpstarter.dev/main/getting-started/installation/service/index.html) - **Recommended for production** | ||
| - [Jumpstarter Project](https://github.com/jumpstarter-dev/jumpstarter) | ||
|
|
||
| ### Technology Stack | ||
| - [MicroShift Documentation](https://microshift.io/) | ||
| - [Bootc Documentation](https://containers.github.io/bootc/) | ||
| - [TopoLVM Documentation](https://github.com/topolvm/topolvm) | ||
|
Comment on lines
-409
to
-412
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I think the links to microshift/bootc at least are good, topolvm is just a microshift detail. |
||
|
|
||
| ## Support | ||
|
|
||
| For issues and questions: | ||
| - File issues on the Jumpstarter GitHub repository | ||
| - Check container logs: `sudo podman logs jumpstarter-microshift-okd` | ||
| - Review systemd journals: `make bootc-sh` then `journalctl -xe` | ||
|
|
||
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,117 +1,21 @@ | ||
| # jumpstarter-operator | ||
| // TODO(user): Add simple overview of use/purpose | ||
| # Jumpstarter Operator | ||
|
|
||
| ## Description | ||
| // TODO(user): An in-depth paragraph about your project and overview of use | ||
| The Jumpstarter operator manages the lifecycle of Jumpstarter controller | ||
| components on Kubernetes using the Operator Lifecycle Manager (OLM). It | ||
| packages the controller, router, and associated resources into a single | ||
| installable unit. | ||
|
|
||
| ## Getting Started | ||
|
|
||
| ### Prerequisites | ||
| - go version v1.24.0+ | ||
| - docker version 17.03+. | ||
| - kubectl version v1.11.3+. | ||
| - Access to a Kubernetes v1.11.3+ cluster. | ||
|
|
||
| ### To Deploy on the cluster | ||
| **Build and push your image to the location specified by `IMG`:** | ||
| ## Development | ||
|
|
||
| ```sh | ||
| make docker-build docker-push IMG=<some-registry>/jumpstarter-operator:tag | ||
| ``` | ||
|
|
||
| **NOTE:** This image ought to be published in the personal registry you specified. | ||
| And it is required to have access to pull the image from the working environment. | ||
| Make sure you have the proper permission to the registry if the above commands don’t work. | ||
|
|
||
| **Install the CRDs into the cluster:** | ||
|
|
||
| ```sh | ||
| make install | ||
| ``` | ||
|
|
||
| **Deploy the Manager to the cluster with the image specified by `IMG`:** | ||
|
|
||
| ```sh | ||
| make deploy IMG=<some-registry>/jumpstarter-operator:tag | ||
| ``` | ||
|
|
||
| > **NOTE**: If you encounter RBAC errors, you may need to grant yourself cluster-admin | ||
| privileges or be logged in as admin. | ||
|
|
||
| **Create instances of your solution** | ||
| You can apply the samples (examples) from the config/sample: | ||
|
|
||
| ```sh | ||
| kubectl apply -k config/samples/ | ||
| ``` | ||
|
|
||
| >**NOTE**: Ensure that the samples has default values to test it out. | ||
|
|
||
| ### To Uninstall | ||
| **Delete the instances (CRs) from the cluster:** | ||
|
|
||
| ```sh | ||
| kubectl delete -k config/samples/ | ||
| ``` | ||
|
|
||
| **Delete the APIs(CRDs) from the cluster:** | ||
|
|
||
| ```sh | ||
| make uninstall | ||
| ``` | ||
|
|
||
| **UnDeploy the controller from the cluster:** | ||
|
|
||
| ```sh | ||
| make undeploy | ||
| make uninstall | ||
| ``` | ||
|
|
||
| ## Project Distribution | ||
|
|
||
| Following the options to release and provide this solution to the users. | ||
|
|
||
| ### By providing a bundle with all YAML files | ||
|
|
||
| 1. Build the installer for the image built and published in the registry: | ||
|
|
||
| ```sh | ||
| make build-installer IMG=<some-registry>/jumpstarter-operator:tag | ||
| ``` | ||
|
|
||
| **NOTE:** The makefile target mentioned above generates an 'install.yaml' | ||
| file in the dist directory. This file contains all the resources built | ||
| with Kustomize, which are necessary to install this project without its | ||
| dependencies. | ||
|
|
||
| 2. Using the installer | ||
|
|
||
| Users can just run 'kubectl apply -f <URL for YAML BUNDLE>' to install | ||
| the project, i.e.: | ||
|
|
||
| ```sh | ||
| kubectl apply -f https://raw.githubusercontent.com/<org>/jumpstarter-operator/<tag or branch>/dist/install.yaml | ||
| ``` | ||
|
|
||
| ## Contributing | ||
| // TODO(user): Add detailed information on how you would like others to contribute to this project | ||
|
|
||
| **NOTE:** Run `make help` for more information on all potential `make` targets | ||
|
|
||
| More information can be found via the [Kubebuilder Documentation](https://book.kubebuilder.io/introduction.html) | ||
|
|
||
| ## License | ||
|
|
||
| Copyright 2025. | ||
|
|
||
| Licensed under the Apache License, Version 2.0 (the "License"); | ||
| you may not use this file except in compliance with the License. | ||
| You may obtain a copy of the License at | ||
|
|
||
| http://www.apache.org/licenses/LICENSE-2.0 | ||
|
|
||
| Unless required by applicable law or agreed to in writing, software | ||
| distributed under the License is distributed on an "AS IS" BASIS, | ||
| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | ||
| See the License for the specific language governing permissions and | ||
| limitations under the License. | ||
|
|
||
| For production deployment, see the | ||
| [Service Installation](https://jumpstarter.dev/main/getting-started/installation/index.html) | ||
| documentation. |
Oops, something went wrong.
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.