Files
calypso/docs/alpha/srs/SRS-04-Tape-Library-Management.md
2026-01-04 13:19:40 +07:00

116 lines
3.5 KiB
Markdown

# SRS-04: Tape Library Management
## 1. Overview
Tape Library Management module provides management of physical and virtual tape libraries, drives, slots, and media.
## 2. Functional Requirements
### 2.1 Physical Tape Library
**FR-TAPE-001**: System shall discover physical tape libraries
- **Action**: Scan for attached tape libraries
- **Output**: List of discovered libraries
**FR-TAPE-002**: System shall list physical tape libraries
- **Output**: Library list with vendor, model, serial number
**FR-TAPE-003**: System shall display physical library details
- **Output**: Library properties, drives, slots, media
**FR-TAPE-004**: System shall allow users to load media
- **Input**: Library ID, drive ID, slot ID
- **Action**: Load tape from slot to drive
**FR-TAPE-005**: System shall allow users to unload media
- **Input**: Library ID, drive ID, slot ID
- **Action**: Unload tape from drive to slot
### 2.2 Virtual Tape Library (VTL)
**FR-TAPE-006**: System shall allow users to create VTL libraries
- **Input**: Library name, vendor, model, drive count, slot count
- **Output**: Created VTL with ID
**FR-TAPE-007**: System shall allow users to list VTL libraries
- **Output**: VTL list with status, drive count, slot count
**FR-TAPE-008**: System shall allow users to view VTL details
- **Output**: VTL configuration, drives, slots, media
**FR-TAPE-009**: System shall allow users to update VTL libraries
- **Input**: VTL ID, updated configuration
**FR-TAPE-010**: System shall allow users to delete VTL libraries
- **Input**: VTL ID
- **Validation**: VTL must not be in use
**FR-TAPE-011**: System shall allow users to start/stop VTL libraries
- **Input**: VTL ID, action (start/stop)
### 2.3 Drive Management
**FR-TAPE-012**: System shall display drive information
- **Output**: Drive status, media loaded, position
**FR-TAPE-013**: System shall allow users to control drives
- **Actions**: Load, unload, eject, rewind
### 2.4 Slot Management
**FR-TAPE-014**: System shall display slot information
- **Output**: Slot status, media present, media label
**FR-TAPE-015**: System shall allow users to manage slots
- **Actions**: View media, move media
### 2.5 Media Management
**FR-TAPE-016**: System shall display media inventory
- **Output**: Media list with label, type, status, location
**FR-TAPE-017**: System shall allow users to label media
- **Input**: Media ID, label
- **Validation**: Valid label format
## 3. User Interface Requirements
### 3.1 Library List View
- Physical and VTL library cards
- Status indicators
- Quick actions (discover, create VTL)
### 3.2 Library Detail View
- Overview tab (library info, status)
- Drives tab (drive list, controls)
- Slots tab (slot grid, media info)
- Media tab (media inventory)
### 3.3 VTL Creation Wizard
- Library name and configuration
- Drive and slot count
- Vendor and model selection
## 4. API Endpoints
```
GET /api/v1/tape/physical/libraries
POST /api/v1/tape/physical/libraries/discover
GET /api/v1/tape/physical/libraries/:id
GET /api/v1/tape/vtl/libraries
GET /api/v1/tape/vtl/libraries/:id
POST /api/v1/tape/vtl/libraries
PUT /api/v1/tape/vtl/libraries/:id
DELETE /api/v1/tape/vtl/libraries/:id
POST /api/v1/tape/vtl/libraries/:id/start
POST /api/v1/tape/vtl/libraries/:id/stop
```
## 5. Permissions
- **tape:read**: Required for viewing libraries
- **tape:write**: Required for creating, updating, deleting, controlling
## 6. Error Handling
- Library not found
- Drive not available
- Slot already occupied
- Media not found
- MHVTL service errors
- Insufficient permissions