-
-
Notifications
You must be signed in to change notification settings - Fork 5
Open
Labels
enhancementNew feature or requestNew feature or request
Description
Summary
Add support for Git repositories as workspaces, enabling easy sharing and distribution of flow workspace config and executables. Users should be able to add workspaces directly from Git URLs and have flow automatically manage cloning, updates, and workspace registration.
Git workspace support would enable patterns like:
flow workspace add my-team-workflows https://github.com/myorg/flow-workflows.git
flow workspace add k8s-tools https://github.com/platform/k8s-flows.git --branch productionCore Requirements
Command Interface
Extend existing workspace commands to accept Git URLs:
# Auto-detect Git URLs in existing command
flow workspace add <name> <git-url> [flags]
# Examples
flow workspace add shared-tools https://github.com/myorg/tools.git
flow workspace add k8s-flows [email protected]:platform/k8s.git --branch main --setStorage Strategy
Follow Go module conventions for dependency management:
~/.cache/flow/git-workspaces/
├── github.com/myorg/tools/
├── gitlab.com/team/scripts/
└── bitbucket.org/company/flows/
Features to Consider
Branch/Tag Support
flow workspace add tools https://github.com/org/tools.git --branch develop
flow workspace add stable https://github.com/org/tools.git --tag v1.0.0Sync Control
- Auto-sync on
flow sync(default) - Manual sync only
- One-time clone (never update)
Authentication
- SSH key support for private repositories
- Token-based authentication
- Graceful handling of auth failures
Offline Operation
- Work with cached Git workspaces when remote is unavailable
- Clear indicators of workspace sync status
Metadata
Metadata
Assignees
Labels
enhancementNew feature or requestNew feature or request