Add consolidated manage_repos tool (list, clone, sync, delete)#419
Closed
jralfonsog wants to merge 9 commits intodatabricks-solutions:mainfrom
Closed
Add consolidated manage_repos tool (list, clone, sync, delete)#419jralfonsog wants to merge 9 commits intodatabricks-solutions:mainfrom
jralfonsog wants to merge 9 commits intodatabricks-solutions:mainfrom
Conversation
Add 5 functions for Databricks Repos CRUD operations: - list_repos: list repos with optional path prefix filter - get_repo: get repo details by ID - create_repo: clone a Git repository into the workspace - update_repo: switch branch or tag (pulls latest from remote) - delete_repo: remove a repo from the workspace Co-authored-by: Isaac
Wrap the 5 core repos functions as MCP tools with manifest tracking: - list_repos (timeout=30) - get_repo (timeout=30) - create_repo (timeout=120, tracks resource in manifest) - update_repo (timeout=60) - delete_repo (timeout=30, removes from manifest) Co-authored-by: Isaac
Cover all 5 functions: list_repos, get_repo, create_repo, update_repo, delete_repo. Tests include happy paths, error handling, provider validation, and branch/tag mutual exclusivity. Co-authored-by: Isaac
Remove extraneous f-string prefix, fix line length, remove unused variable. Co-authored-by: Isaac
- Docstrings: opening """ on its own line - MCP module header: add tool listing - Serialization: use getattr() for defensive SDK object access - Returns sections: bullet list format for dict keys - Manifest imports: late imports in try blocks - Idempotent create: rename to create_or_update_repo with _find_repo_by_url helper Co-authored-by: Isaac
Co-authored-by: Isaac
1ccb391 to
5d2c513
Compare
Replaces list_repos, get_repo, create_or_update_repo, update_repo, and delete_repo with a single manage_repos(action=...) tool following the PR databricks-solutions#394 consolidation pattern. Actions: list, get, create, update, sync, delete. Adds manifest tracking (track_resource/remove_resource) and exposes _manage_repos_impl for direct unit testing. Co-authored-by: Isaac
Add 23 MCP-level tests calling _manage_repos_impl() directly, covering all 6 actions (list, get, create, update, sync, delete), missing params, idempotent create, manifest tracking/removal, and error passthrough. Co-authored-by: Isaac
Replace 5 individual tool references with single manage_repos(action=...) in SKILL.md and git-providers.md. Add actions table showing required and optional params per action. Co-authored-by: Isaac
Collaborator
|
Thank you for the contribution! While we don't think this content aligns with what we're looking for at this time — we're actively monitoring tool and skill bloat, and require use of our testing framework for contributions to be merged — we appreciate you opening these PRs! While I can't see your name on GitHub, if you're at Databricks feel free to reach out on Slack. 👍 |
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.
Summary
manage_repos(action=...)— 6 actions for Databricks Git Repos managementdatabricks-reposskill with consolidated tool examplesTool consolidation
listgetcreateupdatesyncdeleteIncludes manifest tracking on create/delete.
Test plan
This pull request was AI-assisted by Isaac.