Skip to content

Add permission edge collection for remote workspace resources#316

Open
dbx-shauver wants to merge 1 commit intorelease/0.8.0from
feature/pr2-remote-permission-edges
Open

Add permission edge collection for remote workspace resources#316
dbx-shauver wants to merge 1 commit intorelease/0.8.0from
feature/pr2-remote-permission-edges

Conversation

@dbx-shauver
Copy link

Summary

  • Adds permissions.get() calls for Jobs, Clusters, and SQL Warehouses on remote (non-current) workspaces
  • Uses the same ACL→edge pattern as local workspace collection
  • Gated by existing collect_permissions config flag
  • Edge dst uses prefixed vertex IDs (ws_{ws_id}_job:, ws_{ws_id}_cluster:, ws_{ws_id}_warehouse:)
  • Edge src uses principal name strings (email/group_name), unaffected by identity ID prefix change from PR Restructure collection into unified per-workspace loop #313

Context

This is PR 2 of 5 in the cross-workspace collection gap closure plan. Builds on the structural refactor in PR #313 (merged).

Test plan

  • Run collection against a multi-workspace account and verify permission edges appear for remote Jobs, Clusters, and SQL Warehouses
  • Confirm edges use correct prefixed vertex IDs matching remote resource vertices
  • Verify collect_permissions=False skips the new code paths
  • Check that permission collection failures on individual resources don't block overall collection

This pull request was AI-assisted by Isaac.

Add permissions.get() calls for Jobs, Clusters, and SQL Warehouses
on remote workspaces. These resources were already collected as
vertices but had no permission edges, leaving a gap in the
cross-workspace "who can access what" picture.

Uses the same ACL-to-edge pattern as the local workspace collection.
Each call is wrapped in try/except to handle access restrictions
gracefully. Edge dst IDs use the prefixed vertex IDs to ensure
correct graph connectivity.

Co-authored-by: Isaac
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant