024278a3d2
- Add proposal, design, specs, and tasks for git connection model - Include provider adapter, credential storage, SSH key lifecycle specs - Add repository connection API and git operations specifications
29 lines
1.0 KiB
Markdown
29 lines
1.0 KiB
Markdown
## ADDED Requirements
|
|
|
|
### Requirement: Git clone uses SSH credentials
|
|
The system SHALL clone repositories using SSH keys.
|
|
|
|
#### Scenario: Clone repository
|
|
- **WHEN** the system clones a repository
|
|
- **THEN** it writes the SSH private key to a temporary file
|
|
- **AND** sets GIT_SSH_COMMAND to use the key
|
|
- **AND** executes git clone
|
|
- **AND** cleans up the temporary key file
|
|
|
|
#### Scenario: Clone fails with invalid key
|
|
- **WHEN** a clone operation fails due to authentication
|
|
- **THEN** the system returns a clear error message
|
|
- **AND** suggests checking deploy key permissions
|
|
|
|
### Requirement: Git fetch and push use credentials
|
|
The system SHALL support fetch and push operations with SSH credentials.
|
|
|
|
#### Scenario: Fetch updates
|
|
- **WHEN** the system fetches from a remote
|
|
- **THEN** it uses the stored SSH key for authentication
|
|
- **AND** returns the fetch result
|
|
|
|
#### Scenario: Push changes
|
|
- **WHEN** the system pushes to a remote
|
|
- **THEN** it uses the stored SSH key for authentication
|
|
- **AND** returns the push result |