feat(admin): add manual transition job controls#335
Open
houseme wants to merge 1 commit into
Open
Conversation
Add rc admin ilm transition async job controls for status, wait, and cancel operations while preserving the existing synchronous run contract. Co-Authored-By: heihutu <heihutu@gmail.com>
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
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Related Issues
rustfs/backlog#1480
rustfs/backlog#1481
Background
RustFS manual transition durable jobs expose async run, status, wait, and cancel contracts. The CLI needs matching
rc admin ilm transitioncontrols while preserving the existing synchronous run behavior.Solution
Add
rc admin ilm transition run --async,status,wait, andcancelcommands. The implementation keeps the existing synchronous request shape compatible, adds optional parsing for durable job endpoints, and maps status/cancel error classes for 403, 404, 409, and 501 responses.Verification
cargo fmt --all --checkgit diff --checkcargo test -p rustfs-cli --test admin_ilmcargo test -p rustfs-cli test_parse_admin_ilm_transitioncargo test -p rc-s3 manual_transitioncargo check --workspacecargo test -p rustfs-cli --test output_schema_v3cargo clippy --workspace -- -D warningscargo test --workspaceCompatibility
The existing synchronous run API remains unchanged and legacy responses without durable job fields still parse successfully.