Skip to content

feat(cli): add jmp describe for exporters, leases, and clients - #1043

Open
kirkbrauer wants to merge 2 commits into
mainfrom
cli-describe
Open

feat(cli): add jmp describe for exporters, leases, and clients#1043
kirkbrauer wants to merge 2 commits into
mainfrom
cli-describe

Conversation

@kirkbrauer

@kirkbrauer kirkbrauer commented Aug 30, 2026

Copy link
Copy Markdown
Member

jmp get answers what exists; there was no way to ask about one of them in detail short of reading the raw object.

Adds jmp describe exporter|lease|client <name>, following kubectl describe: a readable summary by default, -o json|yaml for a machine. Describing an exporter reports the lease holding it, describing a lease reports its conditions, and describing a client reads the local config — so it works without a connection and says whether the token is still valid. The client description never emits token material.

Documented in the distributed mode guide, where a user first needs to know which exporters exist and what to select on, and from the lease troubleshooting entry in the testing guide. The man page picks the commands up from click.

@kirkbrauer kirkbrauer added enhancement New feature or request python Pull requests that update python code labels Aug 30, 2026
@coderabbitai

coderabbitai Bot commented Aug 30, 2026

Copy link
Copy Markdown
Contributor

Warning

Review limit reached

Next included review available in 49 minutes.

View limit details

Limit details: You’ve used all 2 included reviews currently available.

You've used all free OSS reviews for now. Wait for the free limit to reset to keep reviewing this public repository.

Learn how review limits work.

Review configuration:

⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro Plus

Run ID: da37d0f9-74a1-49a4-b9c3-eb4630940977

📥 Commits

Reviewing files that changed from the base of the PR and between e25ef45 and 8022fa3.

📒 Files selected for processing (6)
  • docs/source/getting-started/guides/examples/testing.md
  • docs/source/getting-started/guides/setup/distributed-mode.md
  • python/packages/jumpstarter-cli-common/jumpstarter_cli_common/alias.py
  • python/packages/jumpstarter-cli/jumpstarter_cli/describe.py
  • python/packages/jumpstarter-cli/jumpstarter_cli/describe_test.py
  • python/packages/jumpstarter-cli/jumpstarter_cli/jmp.py

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@kirkbrauer
kirkbrauer requested review from bennyz and mangelajo August 31, 2026 05:15

@mangelajo mangelajo left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nice. can we add it to documentation? :)

Add a kubectl-style 'jmp describe' command group (alias: desc) with
exporter, lease, and client subcommands. Default output is aligned
plain-text key/value sections; -o json|yaml routes through model_print.
'describe client' reports token expiry and validity without ever
printing token values, using a dedicated ClientDescription model for
structured output.

Assisted-by: Claude:claude-fable-5
Signed-off-by: Kirk Brauer <kirkebrauer@gmail.com>
…exporter

The Lease block in `jmp describe exporter` could never render: GetExporter
answers with the exporter alone, so `exporter.lease` was always None and a
busy exporter reported "Lease: <none>". The tests hung a lease on the
exporter themselves, which the server never does, so they covered it. Look
the holding lease up through ListLeases instead, and pin it with a test that
builds the exporter the way the server returns it.

Documents the command in the distributed mode guide, where a user first needs
to know which exporters exist and what to select on, and points the lease
troubleshooting entry at it.

Assisted-by: Claude
Signed-off-by: Kirk Brauer <kirkebrauer@gmail.com>
@kirkbrauer kirkbrauer added the documentation Improvements or additions to documentation label Aug 31, 2026
@kirkbrauer

Copy link
Copy Markdown
Member Author

@mangelajo Added some docs and fixed a few additional issues I noticed from review.

@kirkbrauer
kirkbrauer requested a review from mangelajo August 31, 2026 14:12
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

documentation Improvements or additions to documentation enhancement New feature or request python Pull requests that update python code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants