- Installed and configured SCST with 7 handlers - Installed and configured mhVTL with 2 Quantum libraries and 8 LTO-8 drives - Implemented all VTL API endpoints (8/9 working) - Fixed NULL device_path handling in drives endpoint - Added comprehensive error handling and validation - Implemented async tape load/unload operations - Created SCST installation guide for Ubuntu 24.04 - Created mhVTL installation and configuration guide - Added VTL testing guide and automated test scripts - All core API tests passing (89% success rate) Infrastructure status: - PostgreSQL: Configured with proper permissions - SCST: Active with kernel module loaded - mhVTL: 2 libraries (Quantum Scalar i500, Scalar i40) - mhVTL: 8 drives (all Quantum ULTRIUM-HH8 LTO-8) - Calypso API: 8/9 VTL endpoints functional Documentation added: - src/srs-technical-spec-documents/scst-installation.md - src/srs-technical-spec-documents/mhvtl-installation.md - VTL-TESTING-GUIDE.md - scripts/test-vtl.sh Co-Authored-By: Warp <agent@warp.dev>
76 lines
1.7 KiB
Markdown
76 lines
1.7 KiB
Markdown
# Quick Start Testing Guide
|
|
|
|
This is a condensed guide to quickly test the Calypso API.
|
|
|
|
## 1. Setup (One-time)
|
|
|
|
```bash
|
|
# Install requirements
|
|
sudo ./scripts/install-requirements.sh
|
|
|
|
# Setup database
|
|
sudo -u postgres createdb calypso
|
|
sudo -u postgres createuser calypso
|
|
sudo -u postgres psql -c "ALTER USER calypso WITH PASSWORD 'calypso123';"
|
|
sudo -u postgres psql -c "GRANT ALL PRIVILEGES ON DATABASE calypso TO calypso;"
|
|
|
|
# Create test user
|
|
./scripts/setup-test-user.sh
|
|
|
|
# Set environment variables
|
|
export CALYPSO_DB_PASSWORD="calypso123"
|
|
export CALYPSO_JWT_SECRET="test-jwt-secret-key-minimum-32-characters-long"
|
|
```
|
|
|
|
## 2. Start the API
|
|
|
|
```bash
|
|
cd backend
|
|
go mod download
|
|
go run ./cmd/calypso-api -config config.yaml.example
|
|
```
|
|
|
|
## 3. Run Automated Tests
|
|
|
|
In another terminal:
|
|
|
|
```bash
|
|
./scripts/test-api.sh
|
|
```
|
|
|
|
## 4. Manual Testing
|
|
|
|
### Get a token:
|
|
```bash
|
|
TOKEN=$(curl -s -X POST http://localhost:8080/api/v1/auth/login \
|
|
-H "Content-Type: application/json" \
|
|
-d '{"username":"admin","password":"admin123"}' | jq -r '.token')
|
|
```
|
|
|
|
### Test endpoints:
|
|
```bash
|
|
# Health
|
|
curl http://localhost:8080/api/v1/health
|
|
|
|
# Current user
|
|
curl http://localhost:8080/api/v1/auth/me \
|
|
-H "Authorization: Bearer $TOKEN"
|
|
|
|
# List disks
|
|
curl http://localhost:8080/api/v1/storage/disks \
|
|
-H "Authorization: Bearer $TOKEN"
|
|
|
|
# List services
|
|
curl http://localhost:8080/api/v1/system/services \
|
|
-H "Authorization: Bearer $TOKEN"
|
|
```
|
|
|
|
## Troubleshooting
|
|
|
|
- **Database connection fails**: Check PostgreSQL is running: `sudo systemctl status postgresql`
|
|
- **401 Unauthorized**: Run `./scripts/setup-test-user.sh` to create the admin user
|
|
- **SCST errors**: SCST may not be installed - this is expected in test environments
|
|
|
|
For detailed testing instructions, see `TESTING-GUIDE.md`.
|
|
|